Media is too big
VIEW IN TELEGRAM
این تست میتواند به شما کمک کند تا تفاوت بین توابعی که مقدار بازگشتی دارند و توابعی که ندارند را بهتر درک کنید.
def func_a():
x = 5
print("This is func_a")
def func_b():
y = 10
return y
result_a = func_a()
result_b = func_b()
print("Result from func_a:", result_a)
print("Result from func_b:", result_b)
یک مثال عالی
def func_a():
x = 5
print("This is func_a")
def func_b():
y = 10
return y
result_a = func_a()
result_b = func_b()
print("Result from func_a:", result_a)
print("Result from func_b:", result_b)
یک مثال عالی
👍2
Media is too big
VIEW IN TELEGRAM
📱پروژه مدیریت رمز با ذخیره لاگ
✨️امروز یک پروژه مهم و عالی برای مدیریت رمز پیاده سازی کردیم
import time
from datetime import datetime
correct_key = "1234"
attempts = 3
log_file = "login_attempts.log"
def log_attempt(status, user_input):
with open(log_file, "a", encoding="utf-8") as file:
timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
file.write(f"{timestamp} | تلاش: {user_input} | وضعیت: {status}\n")
while True:
while attempts > 0:
user_key = input("🔑 لطفاً کلید خود را وارد کنید: ")
if user_key == correct_key:
print("✅ دسترسی مجاز: خوش آمدید!")
log_attempt("موفق", user_key)
exit()
else:
attempts -= 1
print(f"❌ کلید اشتباه است! تلاش باقیمانده: {attempts}")
log_attempt("ناموفق", user_key)
print("🚫 دسترسی موقتاً قفل شد! لطفاً ۲۰ ثانیه صبر کنید...")
log_attempt("قفل شد", "N/A")
time.sleep(20)
attempts = 3
✨️امروز یک پروژه مهم و عالی برای مدیریت رمز پیاده سازی کردیم
import time
from datetime import datetime
correct_key = "1234"
attempts = 3
log_file = "login_attempts.log"
def log_attempt(status, user_input):
with open(log_file, "a", encoding="utf-8") as file:
timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
file.write(f"{timestamp} | تلاش: {user_input} | وضعیت: {status}\n")
while True:
while attempts > 0:
user_key = input("🔑 لطفاً کلید خود را وارد کنید: ")
if user_key == correct_key:
print("✅ دسترسی مجاز: خوش آمدید!")
log_attempt("موفق", user_key)
exit()
else:
attempts -= 1
print(f"❌ کلید اشتباه است! تلاش باقیمانده: {attempts}")
log_attempt("ناموفق", user_key)
print("🚫 دسترسی موقتاً قفل شد! لطفاً ۲۰ ثانیه صبر کنید...")
log_attempt("قفل شد", "N/A")
time.sleep(20)
attempts = 3
🛠 ویژگیهای پروژه:
✅ دریافت رمز از کاربر و بررسی صحت آن
✅ ۳ بار فرصت ورود رمز، بعد از ۳ بار اشتباه، دسترسی قفل میشود
✅ پس از قفل شدن، کاربر باید ۲۰ ثانیه صبر کند تا دوباره تلاش کند
✅ تمام تلاشهای ورود (موفق و ناموفق) در فایل
✅ دریافت رمز از کاربر و بررسی صحت آن
✅ ۳ بار فرصت ورود رمز، بعد از ۳ بار اشتباه، دسترسی قفل میشود
✅ پس از قفل شدن، کاربر باید ۲۰ ثانیه صبر کند تا دوباره تلاش کند
✅ تمام تلاشهای ورود (موفق و ناموفق) در فایل
login_attempts.log ذخیره میشود📌 تورفتگی (Indentation) در پایتون – مهمتر از چیزی که فکر میکنید! 🚀
در پایتون خبری از {} نیست! این زبان با تورفتگی (Indentation) ساختار کد را مشخص میکند.
اگر میزان تورفتگی درست نباشد، با خطای IndentationError مواجه میشوید! ❌
🔹 ۴ فاصله (spaces) استاندارد است – از ترکیب tab و space پرهیز کنید!
🔹 تمام خطوط در یک بلوک باید تورفتگی یکسان داشته باشند.
🔹 در if-else، for، while، try-except و توابع (def) رعایت تورفتگی ضروری است!
🔹 تورفتگی نادرست = اجرا نشدن برنامه! 🚨
💡 اگر تورفتگی را درست رعایت نکنید، پایتون اصلاً کد شما را اجرا نمیکند! پس دقت کنید. ✅
در پایتون خبری از {} نیست! این زبان با تورفتگی (Indentation) ساختار کد را مشخص میکند.
اگر میزان تورفتگی درست نباشد، با خطای IndentationError مواجه میشوید! ❌
🔹 ۴ فاصله (spaces) استاندارد است – از ترکیب tab و space پرهیز کنید!
🔹 تمام خطوط در یک بلوک باید تورفتگی یکسان داشته باشند.
🔹 در if-else، for، while، try-except و توابع (def) رعایت تورفتگی ضروری است!
🔹 تورفتگی نادرست = اجرا نشدن برنامه! 🚨
💡 اگر تورفتگی را درست رعایت نکنید، پایتون اصلاً کد شما را اجرا نمیکند! پس دقت کنید. ✅
🚀 رتبهبندی هوشمند دانشآموزان با Python!
در این چالش، با استفاده از lambda و sorted() دانشآموزان را بر اساس نمره از بالاترین به پایینترین مرتب کردیم. 🎯
✅ چرا این روش؟
🔹 lambda یک تابع ناشناس است که به ما اجازه میدهد بدون تعریف تابع اضافی مقدار score را استخراج کنیم.
🔹 sorted() بهصورت کارآمد و سریع لیست را بر اساس مقدار دلخواه مرتب میکند.
🔹 پارامتر reverse=True ترتیب را نزولی کرده تا بالاترین نمره در صدر باشد.
در این چالش، با استفاده از lambda و sorted() دانشآموزان را بر اساس نمره از بالاترین به پایینترین مرتب کردیم. 🎯
✅ چرا این روش؟
🔹 lambda یک تابع ناشناس است که به ما اجازه میدهد بدون تعریف تابع اضافی مقدار score را استخراج کنیم.
🔹 sorted() بهصورت کارآمد و سریع لیست را بر اساس مقدار دلخواه مرتب میکند.
🔹 پارامتر reverse=True ترتیب را نزولی کرده تا بالاترین نمره در صدر باشد.
students = [
{"name": "Ali", "score": 85},
{"name": "Sara", "score": 92},
{"name": "Reza", "score": 78},
{"name": "Amir", "score": 88},
{"name": "Zahra", "score": 95},
]
sorted_students = sorted(students, key=lambda student: student["score"], reverse=True)
for student in sorted_students:
print(f"{student['name']} - نمره: {student['score']}")
{"name": "Ali", "score": 85},
{"name": "Sara", "score": 92},
{"name": "Reza", "score": 78},
{"name": "Amir", "score": 88},
{"name": "Zahra", "score": 95},
]
sorted_students = sorted(students, key=lambda student: student["score"], reverse=True)
for student in sorted_students:
print(f"{student['name']} - نمره: {student['score']}")
import sqlite3
# اتصال به دیتابیس (در صورت عدم وجود، ایجاد میشود)
conn = sqlite3.connect("car_parts.db")
cursor = conn.cursor()
# ایجاد جدول برای ذخیره خریدها
cursor.execute("""
CREATE TABLE IF NOT EXISTS purchases (
id INTEGER PRIMARY KEY AUTOINCREMENT,
customer_name TEXT NOT NULL,
part_name TEXT NOT NULL,
quantity INTEGER NOT NULL,
total_price INTEGER NOT NULL,
status TEXT NOT NULL
)
""")
# ذخیره تغییرات و بستن اتصال
conn.commit()
conn.close()
print("✅ پایگاه داده و جدول 'purchases' با موفقیت ایجاد شد.")
def add_purchase(customer_name, part_name, quantity, price_per_item):
conn = sqlite3.connect("car_parts.db")
cursor = conn.cursor()
total_price = quantity * price_per_item
status = "در انتظار ارسال"
cursor.execute("INSERT INTO purchases (customer_name, part_name, quantity, total_price, status) VALUES (?, ?, ?, ?, ?)",
(customer_name, part_name, quantity, total_price, status))
conn.commit()
conn.close()
print(f"✅ خرید {part_name} به تعداد {quantity} برای {customer_name} با مبلغ {total_price} تومان ثبت شد.")
# 🛒 ثبت یک خرید نمونه
add_purchase("رضا محمدی", "لنت ترمز", 2, 350000)
add_purchase("سمیه رضایی", "روغن موتور", 3, 500000)
def show_purchases():
conn = sqlite3.connect("car_parts.db")
cursor = conn.cursor()
cursor.execute("SELECT * FROM purchases")
purchases = cursor.fetchall()
print("📊 لیست خریدهای ثبتشده:\n")
for purchase in purchases:
order_id, customer_name, part_name, quantity, total_price, status = purchase
print(f"🆔 سفارش شماره: {order_id}")
print(f"👤 مشتری: {customer_name}")
print(f"🛠 نام قطعه: {part_name}")
print(f"📦 تعداد: {quantity}")
print(f"💰 مبلغ کل: {total_price} تومان")
print(f"📦 وضعیت: {status}")
print("-" * 40)
conn.close()
# 📝 نمایش خریدهای ثبتشده
show_purchases()
# اتصال به دیتابیس (در صورت عدم وجود، ایجاد میشود)
conn = sqlite3.connect("car_parts.db")
cursor = conn.cursor()
# ایجاد جدول برای ذخیره خریدها
cursor.execute("""
CREATE TABLE IF NOT EXISTS purchases (
id INTEGER PRIMARY KEY AUTOINCREMENT,
customer_name TEXT NOT NULL,
part_name TEXT NOT NULL,
quantity INTEGER NOT NULL,
total_price INTEGER NOT NULL,
status TEXT NOT NULL
)
""")
# ذخیره تغییرات و بستن اتصال
conn.commit()
conn.close()
print("✅ پایگاه داده و جدول 'purchases' با موفقیت ایجاد شد.")
def add_purchase(customer_name, part_name, quantity, price_per_item):
conn = sqlite3.connect("car_parts.db")
cursor = conn.cursor()
total_price = quantity * price_per_item
status = "در انتظار ارسال"
cursor.execute("INSERT INTO purchases (customer_name, part_name, quantity, total_price, status) VALUES (?, ?, ?, ?, ?)",
(customer_name, part_name, quantity, total_price, status))
conn.commit()
conn.close()
print(f"✅ خرید {part_name} به تعداد {quantity} برای {customer_name} با مبلغ {total_price} تومان ثبت شد.")
# 🛒 ثبت یک خرید نمونه
add_purchase("رضا محمدی", "لنت ترمز", 2, 350000)
add_purchase("سمیه رضایی", "روغن موتور", 3, 500000)
def show_purchases():
conn = sqlite3.connect("car_parts.db")
cursor = conn.cursor()
cursor.execute("SELECT * FROM purchases")
purchases = cursor.fetchall()
print("📊 لیست خریدهای ثبتشده:\n")
for purchase in purchases:
order_id, customer_name, part_name, quantity, total_price, status = purchase
print(f"🆔 سفارش شماره: {order_id}")
print(f"👤 مشتری: {customer_name}")
print(f"🛠 نام قطعه: {part_name}")
print(f"📦 تعداد: {quantity}")
print(f"💰 مبلغ کل: {total_price} تومان")
print(f"📦 وضعیت: {status}")
print("-" * 40)
conn.close()
# 📝 نمایش خریدهای ثبتشده
show_purchases()
🚗 مدیریت هوشمند خرید لوازم یدکی خودرو با Python و SQLite! 🛠💰
با این سیستم، سفارشات مشتریان را ثبت، مدیریت و مشاهده کنید! ✅
🔹 ذخیره اطلاعات خریدها در پایگاه داده
🔹 محاسبه خودکار مبلغ کل
🔹 نمایش لیست خریدها با جزئیات کامل
🔹 قابل توسعه برای تغییر وضعیت سفارشات
یک ابزار سریع و کاربردی برای فروشگاههای لوازم یدکی و تعمیرگاهها! 🚀✨
با این سیستم، سفارشات مشتریان را ثبت، مدیریت و مشاهده کنید! ✅
🔹 ذخیره اطلاعات خریدها در پایگاه داده
🔹 محاسبه خودکار مبلغ کل
🔹 نمایش لیست خریدها با جزئیات کامل
🔹 قابل توسعه برای تغییر وضعیت سفارشات
یک ابزار سریع و کاربردی برای فروشگاههای لوازم یدکی و تعمیرگاهها! 🚀✨
یادگیری پایتون به صورت پروژهمحور یکی از بهترین روشها برای درک عمیق این زبان برنامهنویسی است. به جای یادگیری تئوری صرف، شما با انجام پروژههای واقعی مهارتهای خود را تقویت کرده و آمادهی ورود به بازار کار خواهید شد.
🔹 چرا یادگیری پروژهمحور؟
✅ حل مسائل واقعی و چالشهای عملی
✅ تقویت مهارتهای حل مسئله
✅ افزایش تجربهی کاری و رزومهی قوی
✅ درک بهتر مفاهیم از طریق کاربرد عملی
🔹 پروژههای پیشنهادی برای یادگیری پایتون:
1️⃣ مدیریت سفارشات یک فروشگاه قطعات خودرو (پردازش داده و ذخیره در دیتابیس)
2️⃣ سیستم مدیریت دانشآموزان (رتبهبندی بر اساس نمره)
3️⃣ تحلیل دادههای آب و هوا (کار با API و مصورسازی دادهها)
4️⃣ ربات تلگرام یا واتساپ (اتوماسیون پیامرسانی)
5️⃣ سیستم پیشنهاد فیلم بر اساس علاقهمندیها (هوش مصنوعی و یادگیری ماشین)
💡 شروع کنید و کد بزنید! هر پروژهای که انجام دهید، یک قدم به برنامهنویس حرفهای شدن نزدیکتر میشوید. 🚀🔥
🔹 چرا یادگیری پروژهمحور؟
✅ حل مسائل واقعی و چالشهای عملی
✅ تقویت مهارتهای حل مسئله
✅ افزایش تجربهی کاری و رزومهی قوی
✅ درک بهتر مفاهیم از طریق کاربرد عملی
🔹 پروژههای پیشنهادی برای یادگیری پایتون:
1️⃣ مدیریت سفارشات یک فروشگاه قطعات خودرو (پردازش داده و ذخیره در دیتابیس)
2️⃣ سیستم مدیریت دانشآموزان (رتبهبندی بر اساس نمره)
3️⃣ تحلیل دادههای آب و هوا (کار با API و مصورسازی دادهها)
4️⃣ ربات تلگرام یا واتساپ (اتوماسیون پیامرسانی)
5️⃣ سیستم پیشنهاد فیلم بر اساس علاقهمندیها (هوش مصنوعی و یادگیری ماشین)
💡 شروع کنید و کد بزنید! هر پروژهای که انجام دهید، یک قدم به برنامهنویس حرفهای شدن نزدیکتر میشوید. 🚀🔥
🚀💡 با پیشرفتهای شگفتانگیز دنیای امروز، یادگیری پایتون یکی از بهترین انتخابهاست! 💡🚀
🔥 از مقدماتی تا پیشرفته – همهچیز دربارهی پایتون و هوش مصنوعی! 🔥
📌 چرا یادگیری پایتون مهم است؟
✅ پایهای قدرتمند برای ورود به دنیای هوش مصنوعی و یادگیری ماشین
✅ آموزش مفاهیم کلیدی برنامهنویسی و حل مسائل چالشبرانگیز
✅ تسلط بر پروژههای واقعی و کاربردی
✅ درک عمیق شبکههای عصبی و یادگیری عمیق
✅ مناسب برای همه، از مبتدی تا حرفهای
🎯 با تمرین، پروژه و حل تستهای متنوع، مهارت خود را به سطح بالاتری برسان!
📍 برگزاری دورهها: آنلاین / حضوری
📲 برای اطلاعات بیشتر و ثبتنام:
🔹 تلگرام: @PyPlus20
🔹 ایتا: @learns_py
🔹 روبیکا: rubika.ir/py_plus22
🔹 اینستاگرام: instagram.com/learns.py
🔹 آپارات:aparat.com/learns.py
✨ مهارت کدنویسی خود را تقویت کن و آیندهی دیجیتال خود را بساز! ✨
🔥 از مقدماتی تا پیشرفته – همهچیز دربارهی پایتون و هوش مصنوعی! 🔥
📌 چرا یادگیری پایتون مهم است؟
✅ پایهای قدرتمند برای ورود به دنیای هوش مصنوعی و یادگیری ماشین
✅ آموزش مفاهیم کلیدی برنامهنویسی و حل مسائل چالشبرانگیز
✅ تسلط بر پروژههای واقعی و کاربردی
✅ درک عمیق شبکههای عصبی و یادگیری عمیق
✅ مناسب برای همه، از مبتدی تا حرفهای
🎯 با تمرین، پروژه و حل تستهای متنوع، مهارت خود را به سطح بالاتری برسان!
📍 برگزاری دورهها: آنلاین / حضوری
📲 برای اطلاعات بیشتر و ثبتنام:
🔹 تلگرام: @PyPlus20
🔹 ایتا: @learns_py
🔹 روبیکا: rubika.ir/py_plus22
🔹 اینستاگرام: instagram.com/learns.py
🔹 آپارات:aparat.com/learns.py
✨ مهارت کدنویسی خود را تقویت کن و آیندهی دیجیتال خود را بساز! ✨