PyCoders (پایتون)
4.52K subscribers
948 photos
140 videos
67 files
195 links
#پایتون جادوگر دنیای برنامه نویسی!
◇ معرفی حوزه های کاری پایتون
◇ معرفی کتابخونه های کاربردی
◇ معرفی دوره های مفید
◇ معرفی تکنیک ها و نکات
◇ نقشه راه حوزه های مختلف
◇ اخبار و آپدیت های پایتون
◇ و هر چیزی در مورد پایتون!

■ گروه پایتون:
@programmers_py
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
نحوه اجرا شدن کدهای پایتون به زبان ساده
👍7
📝 روز اول از چالش مرور و خلاصه بندی زبان پایتون:

"🎉 امروز قراره با اولین قدم‌های دنیای پایتون شروع کنیم.

موضوع امروز:

💠 متغیرها و انواع داده‌ها:

متغیر چیه؟ چطور اطلاعات رو تو برنامه ذخیره کنیم؟
 
🔺متغیرها مثل جعبه‌هایی هستن که اطلاعات رو ذخیره می‌کنن. 
🎯 مثال: 

name = "Ali"
age = 25


اینجا name یه متغیر متنی و age یه متغیر عددی هست."
 
📚 انواع داده‌ها در پایتون:

۱. int - عدد صحیح (مثل ۱۰) 
۲. float - عدد اعشاری (مثل ۳.۱۴) 
۳. str - رشته متنی (مثل 'سلام') 
۴. bool - مقادیر True یا False."


انواع داده‌ها (قسمت ۲):
"💡 مثال عملی: 
x = 10       # عدد صحیح
y = 3.14     # عدد اعشاری
z = "Python" # رشته متنی
is_fun = True # مقدار بولی


هر متغیر نوع خاص خودش رو داره!

"📝 مثال:
نتیجه‌ی کد زیر رو حدس بزنید: 
a = 5
b = 7
c = a + b
print(c)


🎉 جواب: 
کد بالا مقدار ۱۲ رو چاپ می‌کنه، چون a و b با هم جمع شدن!

سؤال:
اگر متغیر زیر تعریف بشه، چه نوع داده‌ای داره؟ 
pi = 3.14

📊 نظرسنجی: 
۱. int 
۲. float 
۳. str."
 
"🚀  امروز با متغیرها و انواع داده‌ها آشنا شدیم. 

🔺فردا: یاد می‌گیریم چطور داده رو از کاربر بگیریم (Input) و نمایش بدیم (Output).

@python_rd
👍3❤‍🔥2🔥2
روش گرفتن اسکرین شات با پایتون

@python_rd
‌‌
در پایتون، خطاها (یا به اصطلاح Exceptions) به چند دسته کلی تقسیم می‌شن که هر کدوم کاربرد خاص خودش رو دارن. در ادامه مهم‌ترین انواع خطاها رو می‌گم همراه با مثال ساده:


---

1. SyntaxError

خطای نحوی وقتی رخ می‌ده که کد پایتون از نظر ساختار اشتباه باشه.

print("Hello"  # فراموش کردن پرانتز بسته

---

2. NameError

وقتی از متغیری استفاده کنی که تعریف نشده:

print(x)  # اگر x تعریف نشده باشه



---

3. TypeError

وقتی نوع داده‌ها درست استفاده نشده باشه:

"5" + 2  # نمی‌شه رشته و عدد رو جمع کرد



---

4. ValueError

مقدار داده معتبر نیست، حتی اگر نوع درست باشه:

int("hello")  # نمی‌شه رشته‌ی hello رو به عدد تبدیل کرد



---

5. IndexError

دسترسی به اندیسی خارج از محدوده لیست:

lst = [1, 2, 3]
print(lst[5])



---

6. KeyError

وقتی کلیدی که در دیکشنری نیست رو فراخوانی می‌کنی:

d = {"name": "Ali"}
print(d["age"])


---

7. AttributeError

وقتی متدی رو روی شی‌ای صدا بزنی که اون متد رو نداره:

x = 5
x.append(3)  # عدد متد append نداره



---

8. ZeroDivisionError

تقسیم عددی بر صفر:

a = 10 / 0



---

9. ImportError / ModuleNotFoundError

وقتی ماژولی رو که وجود نداره ایمپورت کنی:

import notamodule



---

10. FileNotFoundError

وقتی فایل موردنظر برای باز شدن وجود نداشته باشه:

open("nofile.txt")



@python_rd
‌‌
👍7
بعد از یادگیری پایتون برای افزایش مهارت چه چیزهایی رو میتونیم یاد بگیریم؟

🔹 الگوریتم‌ها و ساختمان داده‌ها: اینا پایه‌های برنامه‌نویسی هستن! یادگیری الگوریتم‌ها و ساختمان داده‌ها بهت کمک می‌کنه تا بتونی مسائل رو به بهترین شکل حل کنی و کدهای بهینه‌تری بنویسی.

🔹 پایگاه‌ داده‌ها (SQL و NoSQL): برای ذخیره و مدیریت داده‌ها به پایگاه‌ داده‌ها نیاز داری. SQL برای داده‌های ساختاریافته عالیه و NoSQL برای داده‌های غیرساختاریافته.

🔹 فریمورک‌های وب (Django, Flask): اگه بخوای وب‌سایت بسازی، این فریمورک‌ها بهت کمک می‌کنن تا سریع‌تر و راحت‌تر کار کنی.

🔹 تست و Debugging: یادگیری روش‌های تست و عیب‌یابی بهت کمک می‌کنه تا کدهای بدون اشکالی بنویسی و مشکلات رو سریع‌تر پیدا کنی.

🔹 مهارت‌های مدیریت نسخه (Git): با Git می‌تونی تغییرات کد رو پیگیری کنی و با تیم‌های دیگه به راحتی همکاری کنی.

🔹 کتابخانه‌های علمی (NumPy, Pandas, Matplotlib): این کتابخانه‌ها برای کار با داده‌ها و تحلیل‌های علمی خیلی مفیدن.

🔹 یادگیری ماشین (Scikit-learn, TensorFlow, PyTorch): اگر به هوش مصنوعی و یادگیری ماشین علاقه‌مندی، این ابزارها بهت کمک می‌کنن تا مدل‌های هوشمند بسازی.

🔹 امنیت و شبکه: یادگیری اصول امنیت و شبکه بهت کمک می‌کنه تا نرم‌افزارهای امن‌تری بسازی و با تهدیدات سایبری بهتر مقابله کنی.

🔹 پردازش داده‌ها و Big Data: با یادگیری ابزارهای پردازش داده مثل Hadoop و Spark می‌تونی با داده‌های خیلی بزرگ کار کنی.

🔹 توسعه API (RESTful, GraphQL): اگه بخوای اپلیکیشن‌های وب یا موبایل بسازی، یادگیری API خیلی مهمه.

🔹 معماری نرم‌افزار: این بهت کمک می‌کنه تا بفهمی چطور باید نرم‌افزارها رو طراحی کنی تا مقیاس‌پذیری و نگهداری راحت‌تری داشته باشن.

🔹 DevOps و CI/CD: این مهارت‌ها بهت کمک می‌کنن تا فرایند توسعه نرم‌افزار رو خودکار کنی و سریع‌تر به بازار عرضه کنی.

🔹 کار با داده‌های حجیم (Hadoop, Spark): این ابزارها برای پردازش و آنالیز داده‌های بزرگ بسیار کارآمدن.

🔹 توسعه موبایل (Kivy, BeeWare): با این فریمورک‌ها می‌تونی اپلیکیشن‌های موبایل بسازی.

🔹 اینترنت اشیا (IoT): اگر به پروژه‌های هوشمند علاقه‌مندی، یادگیری IoT بهت کمک می‌کنه.

🔹 توسعه بازی (Pygame): با Pygame می‌تونی بازی‌های ساده بسازی و مهارت‌های برنامه‌نویسی رو به صورت سرگرم‌کننده تقویت کنی.

🔹 پردازش تصویر (OpenCV): اگر به کار با تصاویر علاقه‌مندی، OpenCV ابزار فوق‌العاده‌ای برای پردازش تصویر هست.

🔹 توسعه اسکریپت‌ها و اتوماسیون: با یادگیری این مهارت می‌تونی کارهای تکراری رو خودکار کنی و زمان خودت رو صرف کارهای مهم‌تر کنی.

🔹 برنامه‌نویسی موازی و چند نخی: این مهارت بهت کمک می‌کنه تا برنامه‌هات رو سریع‌تر و بهینه‌تر اجرا کنی.

🔹 پردازش زبان طبیعی (NLTK, SpaCy): اگر به هوش مصنوعی و تحلیل متن علاقه‌مندی، این ابزارها برای پردازش زبان طبیعی عالی هستن.

@python_rd
‌‌
👍4
📝 روز دوم از چالش مرور و خلاصه بندی زبان پایتون:

🟠 ورودی و خروجی (Input/Output)


هدف: یادگیری دستورات input() و print() برای تعامل با کاربر.

امروز یاد می‌گیریم چطور با کاربر ارتباط برقرار کنیم.

♦️ دستور print():

✏️ چاپ اطلاعات:

از دستور print() برای نمایش متن یا اطلاعات استفاده می‌کنیم. 
🎯 مثال: 
print("Hello, world!")


این کد، متن Hello, world! رو چاپ می‌کنه."

♦️ دستور input()
💡 گرفتن ورودی از کاربر:

از دستور input() برای دریافت اطلاعات استفاده می‌کنیم. 
🎯 مثال: 
name = input("What is your name? ")
print("Hello, " + name)


این کد نام کاربر رو می‌پرسه و خوشامد می‌گه."



♦️ ترکیب input() و print()
📝 تمرین:
age = input("How old are you? ")
print("You are " + age + " years old!")


🔍چه اتفاقی می‌افته؟ امتحان کن!

🧨🧨 نکات مهم: نکات مهم

📚 نکته: 
۱. ورودی‌هایی که با input() گرفته می‌شوند، همیشه به صورت متن (str) ذخیره می‌شوند.
 
۲. اگر به عدد نیاز داریم، باید تبدیل کنیم: 

age = int(input("Enter your age: "))


تمرین: 
کد زیر رو اجرا کن و نتیجه رو حدس بزن: 

num1 = int(input("Enter a number: "))
num2 = int(input("Enter another number: "))
print(num1 + num2)


💡 پاسخ تمرین:

این کد دو عدد رو از کاربر می‌گیره، به عدد تبدیل می‌کنه و جمع اون‌ها رو چاپ می‌کنه.

@python_rd
👍7
کتابخانه ها و فریمورک های پایتون

@python_rd
🔥4👍1
منابع زبان اصلی برای پایتون

@python_rd
🔥7👍2
جستجوی کلیدواژه معکوس

یک ابزار Python که به شما امکان می دهد تمام صفحات یک وب سایت معین را برای مدت زمان معین دانلود کنید و کلمات کلیدی را جستجو کنید.


https://github.com/lorenzoromani1983/wayback-keyword-search
👍5🙏1
فریم‌ورک جَنگو (Django) یک فریم‌ورک توسعه وب قدرتمند و رایگان بر پایه زبان پایتون است. هدف اصلی آن، توسعه سریع، کدنویسی تمیز و امنیت بالا است.
ویژگی‌های کلیدی:
ORM (Object-Relational Mapping): تعامل ساده با دیتابیس بدون نیاز به SQL مستقیم.
Admin Panel خودکار: یک پنل مدیریتی قدرتمند که به‌صورت خودکار ساخته می‌شود.
معماری MTV: شامل Model (مدل)، Template (قالب)، و View (نمایش)، مشابه MVC.
امنیت بالا: محافظت در برابر حملاتی مثل SQL Injection و XSS.
پشتیبانی از توسعه مقیاس‌پذیر: مناسب برای پروژه‌های کوچک تا بسیار بزرگ.
کاربردها:
برای ساخت وب‌سایت‌ها، اپلیکیشن‌های تحت وب، فروشگاه‌های آنلاین، شبکه‌های اجتماعی و حتی سیستم‌های مدیریت محتوا (CMS) استفاده می‌شود.

@python_rd
‌‌
🔥4👍3
کد پایتون برای تست سرعت سیستمتون

@python_rd
‌‌
👍3
اطلاعات شماره موبایل با پایتون

@python_rd
‌‌
2👍1
python (2).pdf
7.8 MB
جزوه پایتون دانشگاه شریف

@python_rd
‌‌
🔥9👏2👍1👎1
تکنولوژی‌های هوش مصنوعی به تفکیک زمینه‌های استفاده.
خصوصا در زمینه تحقیق و مقاله نویسی و ویراستاری نباید از هوش مصنوعی غافل شد.
@python_rd
👍2
قدرت مخفی **kwargs 😮

وقتی نمی‌دونی یه فانکشن قراره چه تعداد یا چه اسم‌هایی از آرگومان‌ها رو بگیره،
اصلا خوده**kwargs می‌تونه نجات‌دهنده‌ت باشه 😎

چی کار می‌کنه اصلاً **kwargs؟ 🤔
**kwargs در واقع یه syntax خاص در پایتون هست که به شما اجازه می‌ده تا آرگومان‌های نام‌دار (keyword arguments) رو به صورت دیکشنری به فانکشن‌ها منتقل کنید.

وقتی می‌گیم unpacking، منظور اینه که پایتون این دیکشنری رو می‌گیره و تبدیل می‌کنه به آرگومان‌های جداگانه درون فانکشن. این فرایند باعث می‌شه که هیچ‌گونه محدودیتی در تعداد آرگومان‌ها نداشته باشیم.
حالا بریم مثال اش رو ببینیم👨‍💻
def greet(**kwargs):
for key, value in kwargs.items():
print(f"{key.capitalize()}: {value}")

greet(name="Ali", age=27, city="Tehran")

📤 خروجی:
Name: Ali
Age: 27
City: Tehran

🧠 چی شد؟
خب **kwargs همه آرگومان‌های نام‌دار رو می‌گیره و می‌ریزه توی یه دیکشنری!

خیلی کاربردیه برای فانکشن‌های داینامیک، APIها یا موقعی که نمی‌دونی ورودی دقیقاً چیه!
💡 ترفند: می‌تونی حتی **kwargs رو همون‌جوری که هست به یه فانکشن دیگه پاس بدی!
خیلی وقتا این ترفند نجاتت می‌ده... ولی چطوری؟ 🤔
python 
def log_data(**data):
save_to_db(**data)


@python_rd
👌5👍1
تمرين حلقه For در پايتون

@python_rd
4👍1
این یه وبسایت خوب برای تمرین برنامه نویسی با پایتونه:

pynative.com

@python_rd
👍1🔥1
از کدومش استفاده میکنی؟

@python_rd
👍8
در اینجا چند تمرین با حلقه while به زبان پایتون قراداد ایم که شامل مسئله، کد و توضیحات است:

### تمرین 1: چاپ اعداد 1 تا 10
صورت مسئله: برنامه‌ای بنویسید که با استفاده از حلقه while اعداد 1 تا 10 را چاپ کند.

i = 1
while i <= 10:
    print(i)
    i += 1

توضیح: متغیر i از 1 شروع می‌شود. حلقه while تا زمانی که i کمتر یا مساوی 10 است ادامه می‌یابد و در هر تکرار، مقدار i چاپ شده و یک واحد افزایش می‌یابد.

---

### تمرین 2: محاسبه مجموع اعداد 1 تا n
صورت مسئله: برنامه‌ای بنویسید که از کاربر یک عدد n بگیرد و مجموع اعداد از 1 تا n را با استفاده از حلقه while محاسبه کند.

n = int(input("یک عدد وارد کنید: "))
sum = 0
i = 1
while i <= n:
    sum += i
    i += 1
print(f"مجموع اعداد از 1 تا {n} برابر است با: {sum}")

توضیح: برنامه ابتدا عدد n را از کاربر دریافت می‌کند. متغیر sum برای ذخیره مجموع و i برای شمارش استفاده می‌شود. حلقه while تا زمانی که i کمتر یا مساوی n است، مقدار i را به sum اضافه کرده و i را افزایش می‌دهد.

---

### تمرین 3: شمارش معکوس
صورت مسئله: برنامه‌ای بنویسید که از عدد 10 به صورت معکوس تا 1 شمارش کند و هر عدد را چاپ کند.

i = 10
while i >= 1:
    print(i)
    i -= 1

توضیح: متغیر i از 10 شروع می‌شود. حلقه while تا زمانی که i بزرگ‌تر یا مساوی 1 است ادامه می‌یابد و در هر تکرار، مقدار i چاپ شده و یک واحد کاهش می‌یابد.

---

### تمرین 4: پیدا کردن اولین عدد زوج
صورت مسئله: برنامه‌ای بنویسید که از کاربر اعداد را بگیرد و اولین عدد زوج وارد شده را چاپ کند. اگر کاربر عدد منفی وارد کرد، برنامه متوقف شود.

while True:
    num = int(input("یک عدد وارد کنید: "))
    if num < 0:
        print("عدد منفی وارد شد. برنامه متوقف می‌شود.")
        break
    if num % 2 == 0:
        print(f"اولین عدد زوج: {num}")
        break

توضیح: حلقه while True به صورت بی‌نهایت اجرا می‌شود مگر اینکه با break متوقف شود. برنامه عدد را از کاربر می‌گیرد. اگر عدد منفی باشد، برنامه متوقف می‌شود. اگر عدد زوج باشد (بخش‌پذیر بر 2)، آن را چاپ کرده و حلقه متوقف می‌شود.

---

### تمرین 5: محاسبه فاکتوریل
صورت مسئله: برنامه‌ای بنویسید که فاکتوریل یک عدد n را با استفاده از حلقه while محاسبه کند.

n = int(input("یک عدد وارد کنید: "))
factorial = 1
i = 1
while i <= n:
    factorial *= i
    i += 1
print(f"فاکتوریل {n} برابر است با: {factorial}")

توضیح: متغیر factorial برای ذخیره نتیجه و i برای شمارش استفاده می‌شود. حلقه while تا زمانی که i کمتر یا مساوی n است، مقدار i را در factorial ضرب کرده و i را افزایش می‌دهد.

@python_rd
‌‌
👍5🙏1
Media is too big
VIEW IN TELEGRAM
انیمیشن پایتون

@python_rd
‌‌
👍85