7️⃣ بررسی مقادیر None و خالی
وقتی با متغیرهایی کار میکنی که ممکنه None یا خالی باشن (مثل لیست، رشته، یا دیکشنری)، مراقب باش که ارور نگیری.
❌ مثال خطرناک:
data = None
if data["key"]: # TypeError: 'NoneType' object is not subscriptable
print("Data vojood dare!")
✅ مثال درست:
data = None
if data is not None and "key" in data:
print("Data vojood dare!")
else:
print("Data khalie ya None ast! 😕")
💡 ترفند:
برای بررسی خالی بودن لیست، رشته، یا دیکشنری، از if data استفاده کن:
my_list = []
if not my_list:
print("List khalie! 📭")
💯 @PythonForYou 🧑💻👩💻
8️⃣ استفاده از is به جای == برای None
برای مقایسه با None، از عملگر is به جای == استفاده کن.
❓ چرا؟ چون is بررسی میکنه که متغیر دقیقاً None باشه، نه یه مقدار مشابه.
✅ مثال:
value = None
if value is None:
print("Value None ast! 🚫")
else:
print("Value chizi digast! ✅")
💡 نکته: برای مقایسه مقادیر بولین یا اعداد، از == استفاده کن، اما برای None همیشه is بهتره.
💯 @PythonForYou 🧑💻👩💻
9️⃣ شرطهای چندگانه با all و any
اگه چندتا شرط داری، به جای نوشتن and یا or طولانی، از توابع داخلی all و any استفاده کن.
➡️ all:
اگه همه شرطها درست باشن، True برمیگردونه.
➡️ any:
اگه حداقل یکی از شرطها درست باشه، True برمیگردونه.
🔸 مثال با and:
if score1 >= 50 and score2 >= 50 and score3 >= 50:
print("Hame nomreha ghaboolan! 🌟")
🔹 مثال با all:
scores = [score1, score2, score3]
if all(score >= 50 for score in scores):
print("Hame nomreha ghaboolan! 🌟")
🔸 مثال با any:
if any(score >= 90 for score in scores):
print("Yek nomre A dari! 🎉")
💡 نکته: all و any کد رو تمیزتر و خواناتر میکنن، مخصوصاً وقتی تعداد شرطها زیاده.
💯 @PythonForYou 🧑💻👩💻
🔟 دیباگ کردن شرطها
اگه شرطهات درست کار نمیکنن، با چاپ مقادیر دیباگ کن:
age = 17
has_license = False
print(f"age: {age}, has_license: {has_license}") # check kardane meghdarha
if age >= 18 and has_license:
print("Mitoni ranandegi koni! 🚗")
else:
print("Nemitooni ranandegi koni! 😕")
💡 ترفند:
از assert برای چک کردن شرطها تو کد استفاده کن:
assert age >= 0, "Sen nabayad manfi bashe!"
💯 @PythonForYou 🧑💻👩💻
📢 10 مثال کاربردی و جذاب از ساختارهای تصمیمگیری در پایتون 🐍
تو این پست، 10 تا مثال واقعی و کاربردی از ساختارهای if, elif, else براتون آماده کردیم که تو پروژههای واقعی خیلی به کارتون میاد! 😎
از بررسی سن تا محاسبه تخفیف و تحلیل داده، همهچیز اینجاست. بریم ببینیم! 🚀
1️⃣ بررسی دسترسی کاربر به سیستم
💯 کاربرد: چک کردن اینکه کاربر میتونه وارد سیستم بشه یا نه.
username = "ali"
password = "1234"
if username == "ali" and password == "1234":
print("Khosh omadi, Ali! ✅")
else:
print("Username ya password ghalate! 🚫")
⬟〰️⬟〰️⬟〰️⬟〰️⬟
2️⃣ محاسبه تخفیف فروشگاه
💯 کاربرد: اعمال تخفیف بر اساس مبلغ خرید.
purchase_amount = 150000
if purchase_amount > 200000:
discount = purchase_amount * 0.2
print(f"Takhfif: {discount} toman")
elif purchase_amount > 100000:
discount = purchase_amount * 0.1
print(f"Takhfif: {discount} toman")
else:
print("Takhfifi nadari! 🛒")
⬟〰️⬟〰️⬟〰️⬟〰️⬟
3️⃣ تشخیص نوع روز (تعطیل یا کاری)
💯 کاربرد: بررسی روز هفته برای برنامهریزی.
day = "jom'e"
if day in ["shanbe", "jom'e"]:
print("Emrooz tatil ast! 😎")
else:
print("Emrooz rooze kari ast! 💼")
⬟〰️⬟〰️⬟〰️⬟〰️⬟
4️⃣ بررسی سلامت رمز عبور
💯 کاربرد: چک کردن اینکه رمز عبور قوی هست یا نه.
password = "Pass123"
if len(password) >= 8 and any(c.isupper() for c in password) and any(c.isdigit() for c in password):
print("Ramz ghavi ast! 🔒")
else:
print("Ramz za'ife, lotfan behtar kon! ⚠️")
⬟〰️⬟〰️⬟〰️⬟〰️⬟
5️⃣ پیشنهاد لباس بر اساس دمای هوا
💯 کاربرد: توصیه به کاربر بر اساس دمای هوا.
temperature = 10
if temperature > 25:
print("T-shirt bepoosh! ☀️")
elif temperature > 15:
print("Polo bepoosh! 😊")
elif temperature > 5:
print("Jacket bepoosh! 🧥")
else:
print("Khatere, koot bepoosh! 🧣")
⬟〰️⬟〰️⬟〰️⬟〰️⬟
6️⃣ بررسی موجودی انبار
💯 کاربرد: مدیریت انبار فروشگاه یا شرکت.
stock = 5
if stock == 0:
print("Mojoodi tamoom shod! 🚫")
elif stock <= 10:
print(f"Hoshdar: {stock} ta mojoodi baghi mande! ⚠️")
else:
print("Mojoodi kafi ast! ✅")
⬟〰️⬟〰️⬟〰️⬟〰️⬟
7️⃣ دستهبندی نمره امتحان
💯 کاربرد: دادن رتبه به دانشآموز بر اساس نمره.
score = 92
if score >= 90:
print("Nomre A: Aali! 🌟")
elif score >= 80:
print("Nomre B: Khoob! 👍")
elif score >= 70:
print("Nomre C: Ghabool! 😊")
else:
print("Mardood shodi, talash kon! 😅")
⬟〰️⬟〰️⬟〰️⬟〰️⬟
8️⃣ بررسی سن برای دسترسی به محتوا
💯 کاربرد: محدود کردن دسترسی به فیلم یا بازی بر اساس سن.
age = 16
has_parent_permission = False
if age >= 18 or (age >= 13 and has_parent_permission):
print("Mitooni film ro bebini! 🎬")
else:
print("Dastresi nadari! 🚫")
⬟〰️⬟〰️⬟〰️⬟〰️⬟
9️⃣ تشخیص عدد زوج یا فرد
💯 کاربرد: بررسی ویژگیهای عدد در مسائل ریاضی.
number = 42
result = "zoj" if number % 2 == 0 else "fard"
print(f"Adad {number} {result} ast! 🔢")
⬟〰️⬟〰️⬟〰️⬟〰️⬟
🔟 اعتبارسنجی ایمیل ساده
💯 کاربرد: چک کردن فرمت اولیه ایمیل کاربر.
email = "ali@example.com"
if "@" in email and "." in email and len(email) > 5:
print("Email format doroste! 📧")
else:
print("Email ghalate, dobare vared kon! ❌")
💯 @PythonForYou 🧑💻👩💻
📌 برعکس کردن رشته در پایتون با ترکیب ()reversed و ()join
اگر بخوای یک رشته رو در پایتون بهصورت برعکس نمایش بدی، میتونی از ترکیب دو تابع ()reversed و ()join استفاده کنی:
text = "Python"
reversed_text = ''.join(reversed(text))
print(reversed_text) # خروجی: nohtyP
✅ نکات مهم:
🔹 این ()reversed یک iterator برمیگردونه که حروف رشته رو بهصورت برعکس تولید میکنه.
🔹 با ()join میتونی این حروف رو بههم بچسبونی و رشته نهایی بسازی.
🔹 این روش وقتی مفیده که بخوای کنترل بیشتری روی روند کار داشته باشی (مثلاً حروف خاص رو فیلتر کنی یا جداکننده بذاری).
مثال حرفهایتر:
text = "Python"
reversed_with_dash = '-'.join(reversed(text))
print(reversed_with_dash) # خروجی: n-o-h-t-y-P
💯 @PythonForYou 🧑💻👩💻
🔥 تورفتگی تو پایتون و شرطهای if: یه راز مهم! 🐍
تازه با if تو پایتون آشنا شدید؟ پس این پست برای شماست! یه قانون طلایی تو پایتون هست که باید یادتون بمونه: مراقب تورفتگی باشید! 😅
💡 تورفتگی چیه؟
تورفتگی یعنی فاصلهای که اول خط میذارید تا به پایتون بگید کدوم خطها زیر یه شرط if اجرا بشن. مثلاً مثل نقشهایه که به پایتون میگه: "هی، این خطها مال این شرطن!" 🗺
✅ یه مثال ساده:
if 5 > 3:
print("آره، 5 بزرگتر از 3ه!")
اینجا خط دوم باید یه کم (معمولاً 4 تا فاصله) از اول خط فاصله داشته باشه تا پایتون بفهمه زیر شرط ifه.
❌ اگه تورفتگی رو خراب کنیم چی میشه؟
اگه فاصله نذارید یا اشتباه فاصله بذارید، پایتون قاطی میکنه و ارور IndentationError میده! 😵 مثلاً:
if 5 > 3:
print("اوه، من خراب شدم!")
این کد کار نمیکنه چون خط دوم تورفتگی نداره.
🌟 نکتههای باحال برای تورفتگی درست:
همیشه از 4 فاصله (space) برای تورفتگی استفاده کنید.
اگه چند خط زیر if دارید، همه باید یه اندازه فاصله داشته باشن:
if 10 > 5:
print("10 بزرگتره!")
print("عالیه!")
فاصله و تب (Tab) رو قاطی نکنید! پایتون اینو دوست نداره. 🚫
💯 @PythonForYou 🧑💻👩💻
پایتون برای شما
🔥 تورفتگی تو پایتون و شرطهای if: یه راز مهم! 🐍 تازه با if تو پایتون آشنا شدید؟ پس این پست برای شما
چرا پایتون تب و فاصله رو قاطی نمیکنه؟
تو پایتون، تورفتگی (Indentation) مثل یه قانون طلاییه که به مفسر پایتون میگه کدوم خطها توی یه بلوک (مثل زیر یه شرط if) هستن. حالا پایتون برای خوندن تورفتگی خیلی حساسه! 😅
تب (Tab) و فاصله (Space) دو روش مختلف برای ایجاد تورفتگی هستن. یه تب معمولاً برابر با 4 یا 8 تا فاصلهست (بستگی به ویرایشگر کدت داره).
اگه تو یه فایل کد، یه جا از تب و یه جا از فاصله استفاده کنی، پایتون گیج میشه! چون نمیتونه بفهمه این دو تا تورفتگی یکسانن یا نه. این باعث ارور IndentationError میشه. 😵
مثال:
if 5 > 3:
print("این با 4 تا فاصله است")
print("این با یه تب است")
این کد ارور میده چون خط سوم با تب و خط دوم با فاصله تورفتگی داره.
چرا این مشکل پیش میاد؟ 🤔
پایتون از تورفتگی برای ساختار کد استفاده میکنه (برخلاف زبونای دیگه که از کروشه {} یا کلمههای خاص استفاده میکنن). اگه تب و فاصله قاطی بشن، مفسر پایتون نمیتونه درست تشخیص بده که کدوم خط کجاست.
راه حل؟ 🤗
یا فقط از فاصله (Space) استفاده کن (معمولاً 4 تا فاصله برای هر سطح تورفتگی).
یا فقط از تب (Tab) استفاده کن (ولی فاصله استانداردتره و بیشتر توصیه میشه).
ویرایشگرای کد مثل VSCode یا PyCharm میتونن تنظیم بشن که خودشون فاصله رو درست کنن و نذارن تب و فاصله قاطی بشن! 😎
💯 @PythonForYou 🧑💻👩💻
حتی اگه یک درصد احتمال موفقیت وجود دارد، با تمام توان بجنگید 🌺
💯 @PythonForYou 🧑💻👩💻
📢 همهچیز درباره حلقههای تکرار (for و while) + نکات حرفهای 🐍
حالا قراره غوغا کنیم و حلقههای تکرار (Loops) در پایتون رو از صفر تا صد بررسی کنیم! 😎
حلقهها قلب تپنده برنامهنویسیان و برای تکرار کارها، پیمایش دادهها، و حتی حل مسائل پیچیده استفاده میشن.
از حلقههای for و while گرفته تا نکات ریز تورفتگی، کنترل جریان، و ترفندهای بهینه، همهچیز اینجاست! 🚀
بریم شروع کنیم!
💯 @PythonForYou 🧑💻👩💻
حلقههای تکرار چیه؟ 🤔
حلقهها بهت اجازه میدن یه بلوک کد رو چندبار اجرا کنی. تو پایتون دو نوع حلقه اصلی داریم:
🔹 حلقه for: برای پیمایش اشیاء قابلتکرار (مثل فهرست، رشته، یا range) عالیه.
🔸 حلقه while: تا وقتی یه شرط درست باشه، کد رو تکرار میکنه.
—-—-—-—-—-—-—-—-—-—-—
1️⃣ حلقه for: پیمایش ساده و قدرتمند
💥 کاربرد: وقتی میدونی چندبار باید تکرار کنی یا میخوای روی یه مجموعه (مثل فهرست یا رشته) پیمایش کنی.
📝 سینتکس:
for item in iterable:
# Kode inja tekrar mishe
📌 مثال ساده:
fruits = ["sib", "moz", "portoghal"]
for fruit in fruits:
print(f"Mive: {fruit}")
# Khoroji:
# Mive: sib
# Mive: moz
# Mive: portoghal
✨ مثال با ایندکس (استفاده از enumerate):
for i, fruit in enumerate(fruits):
print(f"Index {i}: {fruit}")
# Khoroji:
# Index 0: sib
# Index 1: moz
# Index 2: portoghal
✨ مثال با range:
for num in range(1, 5):
print(f"Adad: {num}")
# Khoroji:
# Adad: 1
# Adad: 2
# Adad: 3
# Adad: 4
💡 نکات ریز برای for:
- از enumerate() برای دسترسی همزمان به ایندکس و مقدار استفاده کن (بهتر از range(len())).
- برای فهرستهای بزرگ، مستقیم روی فهرست پیمایش نکن، از ژنراتorها (مثل range) استفاده کن تا حافظه کمتری مصرف بشه.
- مراقب تغییر فهرست تو حلقه باش (مثل حذف یا اضافه عنصر)، چون ممکنه ایندکسها بههم بریزه:
numbers = [1, 2, 3]
for num in numbers:
numbers.append(4) # Bad idea! Halghe bi-payan mishe
💯 @PythonForYou 🧑💻👩💻
2️⃣ حلقه while: تکرار تا وقتی شرط درسته
💥 کاربرد: وقتی نمیدونی چندبار باید تکرار کنی و فقط یه شرط داری.
📝 سینتکس:
while condition:
# Kode inja tekrar mishe
✨ مثال ساده:
count = 1
while count <= 5:
print(f"Shomar: {count}")
count += 1
# Khoroji:
# Shomar: 1
# Shomar: 2
# Shomar: 3
# Shomar: 4
# Shomar: 5
✨ مثال با شرط پیچیده:
password = ""
while password != "1234":
password = input("Ramz ro vared kon: ")
if password == "1234":
print("Khosh omadi! ✅")
else:
print("Ramz ghalat! 🚫")
💡 نکات ریز برای while:
- همیشه یه راه خروج از حلقه بذار (مثل افزایش متغیر یا شرط break)، وگرنه حلقه بیپایان میشه:
while True: # Bad idea! Halghe bi-payan
print("Inja gir mikoni!")
- برای جلوگیری از حلقه بیپایان، از یه شرط منطقی یا محدودیت (مثل حداکثر تعداد تکرار) استفاده کن:
tries = 0
while tries < 3:
print("Try kardan...")
tries += 1
💯 @PythonForYou 🧑💻👩💻