آموزش پایتون
88 subscribers
281 photos
21 videos
81 files
178 links
ارتباط با ما:
@learnpythonicyBot

لینک گروه چت:
https://t.me/learnpythonicychat

لینک چنل ایتا:
https://eitaa.com/learnpythonicy
Download Telegram
آیا تا حالا نیاز داشتید بفهمید که توی یک لیست یا متن چه چیزهایی بیشتر تکرار شدن؟ 🤔

✔️ با Counter می‌تونید به راحتی تکرار هر عنصر رو بشمارید و داده‌ها رو تحلیل کنید!

در اینجا، Counter به راحتی به ما نشون می‌ده که هر کدام از آیتم‌ها چقدر تکرار شده‌اند. این ویژگی خیلی کاربردیه وقتی بخواهیم داده‌های بزرگ رو تجزیه و تحلیل کنیم.

#بدانیم | #collections
👍5
✔️ طراحی گل با ماژول Turtle در پایتون!

ویژگی‌های کد:
- ایجاد یک طرح گل با ۳۶ دایره چرخان
- استفاده از ماژول turtle برای گرافیک برداری
- مناسب برای آشنایی با مفاهیم برنامه‌نویسی و هندسه

From: Nginoo

#بدانیم | #turtle | آموزش پایتون
برنامه ای طراحی کنید که شکل تصویر را ترسیم کند🤓

پاسخ در کامنت👇

#بدانیم | #turtle | آموزش پایتون
2
✔️ محاسبه هوشمندانه فاصله بین نقاط

با استفاده از توابع math.dist و math.isclose. این روش برای تشخیص نقاط تقریبا یکسان در محاسبات علمی و پردازش داده‌های مکانی عالی هست. با تنظیم tolerance می‌تونید دقت مقایسه رو کنترل کنید.

#math | @learnpythonicy
✔️ ساخت PDF با FPDF در پایتون

🔅 کاربردهای FPDF:
- ساخت گزارش‌های خودکار
- تولید فاکتور و مدارک رسمی
- خروجی PDF از داده‌های برنامه

🔅 ویژگی‌های کلیدی:
- سبک و ساده برای تولید PDF
- قابلیت اضافه کردن متن، جداول و تصاویر
- تنظیم فونت و استایل متن

#fpdf | @learnpythonicy

> نصب کتابخانه:
> pip install fpdf2
👍1
🔘 خروجی‌ کد بالا کدام است؟

#تست_تایم
Output:
Anonymous Quiz
43%
A
29%
B
29%
C
0%
D
✔️ انتخاب تصادفی ساده در پایتون

شبیه‌سازی پرتاب تاس (اعداد 1 تا 6)
انتخاب تصادفی نوبت بازیکنان (Sara یا Ali)

👈 ایده برای ارتقا:

1. سیستم نوبت دهی هوشمند:
- ابتدا به صورت تصادفی انتخاب می‌کند چه کسی بازی را شروع کند
- نتیجه تاس به همراه نام بازیکن چاپ می‌شود

2. قانون شانس مجدد:
- اگر بازیکن عدد 6 بیاورد (شرط if)
- پیام "شانس مجدد" نمایش داده می‌شود
- در این حالت نوبت به بازیکن بعدی نمی‌رسد و همان بازیکن دوباره تاس می‌اندازد

3. قابلیت توسعه:
- می‌توانید لیست بازیکنان را گسترش دهید
- می‌توانید قانون 6 آوردن را تغییر دهید (مثلا 2 بار پشت هم 6 بیاورد)
- می‌توانید امتیازات را هم ذخیره کنید

کاربرد عملی
- پیاده‌سازی بازی‌های رومیزی مثل ماروپله
- سیستم نوبت‌دهی در بازی‌های گروهی
- شبیه‌سازی شرایط تصادفی در برنامه‌نویسی

#random | learnpythonicy

👇👇👇👇

import random

players = ["Sara", "Ali"]
current_player = random.choice(players)
dice_roll = random.randint(1, 6)

print(f"{current_player}'s turn - Rolled: {dice_roll}")
if dice_roll == 6:
print("Bonus turn!")
✔️ مثال ساده پیاده‌سازی بلاکچین در پایتون

ویژگی‌های این پیاده‌سازی
1. تابع هش (SHA-256) برای ایجاد اثرانگشت دیجیتال
2. زنجیره بلوک‌ها با ارجاع به هش بلاک قبلی
3. مقاومت در برابر تغییر (تغییر یک بلاک، هش تمام بلاک‌های بعدی را خراب می‌کند)

کاربردهای عملی
- سیستم‌های پرداخت رمزارز
- ردیابی زنجیره تأمین کالا
- ذخیره‌سازی اسناد مهم

نصب پیش‌نیاز
pip install hashlib


#blockchain | @learnpythonicy

کد در کامنت👇
✔️ مثال ساده از ماژول datetime - نمایش تاریخ و ساعت فعلی

from datetime import datetime

# دریافت تاریخ و ساعت فعلی
now = datetime.now()
print("تاریخ و ساعت فعلی:")
print(now.strftime("%Y-%m-%d %H:%M:%S"))


ویژگی‌های کلیدی
- نمایش فرمت‌های مختلف تاریخ/ساعت
- محاسبه اختلاف بین دو تاریخ
- پشتیبانی از تقویم شمسی

کاربردهای سریع
- لاگ‌گیری زمان رویدادها
- مدیریت مهلت‌های پروژه
- برنامه‌های

#datetime | @learnpythonicy

> *برای تاریخ شمسی می‌توانید از کتابخانه jdatetime استفاده کنید.*
✔️ مثال ساده از ماژول os - مدیریت فایل‌ها و پوشه‌ها


کاربردهای اصلی
- مدیریت فایل‌های سیستم
- تغییر مسیر دایرکتوری کار
- اجرای دستورات

نکته
- برای حذف فایل: os.remove("فایل.txt")
- برای بررسی وجود فایل: os.path.exists("فایل.txt")


#os | @learnpythonicy

> این ماژول برای اتوماسیون کارهای سیستمی عالی است!
✔️ تولید اعداد تصادفی در پایتون با ۷ روش حرفه‌ای!

برای تولید اعداد تصادفی در پایتون، این تکنیک‌های کاربردی را امتحان کنید:

1️⃣ ماژول random پایه
import random
print(random.random()) # عدد اعشاری بین 0 تا 1


2️⃣ محدوده عددی
print(random.randint(1, 100))  # عدد صحیح بین 1 تا 100


3️⃣ انتخاب تصادفی از لیست
items = ['a', 'b', 'c']
print(random.choice(items)) # انتخاب یک آیتم


4️⃣ نمونه‌گیری بدون جایگزینی
print(random.sample(range(100), 5))  # 5 عدد منحصر بفرد


5️⃣ توزیع نرمال
print(random.gauss(0, 1))  # توزیع گاوسی


6️⃣ برای نتایج تکرارپذیر
random.seed(42)  # ثابت کردن نتایج تصادفی


7️⃣ ماژول secrets برای امنیت
import secrets
print(secrets.randbelow(100)) # ایمن برای رمزنگاری


🗝 روش ویژه: NumPy برای آرایه‌های تصادفی
import numpy as np
print(np.random.rand(3,3)) # ماتریس 3x3 تصادفی


نکات طلایی
- برای امنیت از secrets استفاده کنید
- برای علم داده از numpy.random استفاده شود
- دستور seed برای دیباگ مفید است


#PythonMagic | #random | #seed | #secrets | #numpy | learnpythonicy

> *برای بازی‌ها، شبیه‌سازی‌ها و رمزنگاری کاربرد دارد*
🤓2
🪂 سرگرمی با ماژول مخفی پایتون!

import antigravity  


چه اتفاقی می‌افته؟
- یه صفحه وب با کمیک xkcd باز میشه
- درباره قابلیت‌های جالب پایتون توضیح میده

#antigravity | @learnpythonicy
✔️ دیگه نیازی به تغییر متغیر نیست...

بنظرت خروجی کد بالا چی میشه؟؟
✔️ پردازش تصویر با OpenCV و Matplotlib در پایتون


🔍 مراحل پردازش:
1️⃣ خواندن تصویر از مسیر مشخص
2️⃣ تبدیل رنگ BGR به RGB برای نمایش صحیح
3️⃣ تبدیل به تصویر خاکستری
4️⃣ اعمال فیلتر گوسی برای بلور کردن
5️⃣ استخراج لبه‌ها با الگوریتم Canny
6️⃣ نمایش تمام مراحل در یک پنجره

کاربردها:
- بینایی ماشین
- پردازش تصاویر پزشکی
- سیستم‌های تشخیص چهره

#cv2 | #numpy | #matplotlib | #opencv | @learnpythonicy

#بدانیم | #پردازش_تصویر | آموزش پایتون
✔️ تشخیص اشیا در زمان واقعی با YOLOv8 و OpenCV

ویژگی‌های کلیدی
- پیشرفته‌ترین مدل تشخیص اشیا (YOLOv8)
- پردازش زنده با وبکم
- دقت بالا در شناسایی 80 کلاس مختلف
- بهینه‌سازی شده برای اجرا روی CPU/GPU

کاربردهای انقلابی
- سیستم‌های نظارت هوشمند
- رباتیک و خودروهای خودران
- تحلیل تصاویر ماهواره‌ای

نصب:
pip install ultralytics opencv-python


🎬 پیشنهاد محتوای ویدیویی:
- نمایش عملکرد زنده روی اشیا مختلف
- مقایسه دقت YOLOv8 با نسخه‌های قبلی
- آموزش تنظیم پارامترها برای سناریوهای خاص

#ultralytics | #cv2 | @learnpythonicy
🎭 تشخیص احساسات چهره با نمایش همزمان تصویر و نتایج

import deepface as DeepFace
import cv2
import matplotlib.pyplot as plt
import numpy as np

# شروع دوربین
cap = cv2.VideoCapture(0)

while True:
ret, frame = cap.read()
if not ret:
break

try:
# تحلیل احساسات
results = DeepFace.analyze(frame, actions=['emotion'], enforce_detection=False)
emotion = results[0]['dominant_emotion']
emotions = results[0]['emotion']

# رسم نمودار احساسات
plt.clf() # پاک کردن نمودار قبلی
plt.bar(emotions.keys(), emotions.values(), color='skyblue')
plt.title(f'Dominant Emotion: {emotion}')
plt.ylim(0, 100)

# تبدیل نمودار به تصویر OpenCV
fig = plt.gcf()
fig.canvas.draw()
plot_img = np.array(fig.canvas.renderer.buffer_rgba())
plot_img = cv2.cvtColor(plot_img, cv2.COLOR_RGBA2BGR)

# نمایش ترکیبی
combined = np.vstack((
cv2.resize(frame, (640, 360)),
cv2.resize(plot_img, (640, 360))
))

cv2.imshow('Face Analysis - Live', combined)

except Exception as e:
print(f"خطا: {e}")
cv2.imshow('Face Analysis - Live', frame)

if cv2.waitKey(1) == ord('q'):
break

cap.release()
cv2.destroyAllWindows()


✔️ ویژگی‌های منحصر به فرد

- نمایش زنده تصویر دوربین + نمودار احساسات در یک پنجره
- آپدیت لحظه‌ای نمودار با تغییر حالات چهره
- بهینه‌سازی عملکرد با enforce_detection=False برای جلوگیری از خطا

🛠 راه‌اندازی آسان

1. نصب کتابخانه‌ها:
pip install deepface opencv-python matplotlib numpy


2. اجرای کد:
python face_emotion.py


#deepface | #cv2 | #matplotlib | #numpy | @learnpythonicy

> *برای دقت بیشتر می‌توانید مدل‌های سفارشی مانند VGG-FER را بارگذاری کنید:*
> DeepFace.build_model("VGG-Fer")
✔️ تحلیل داده‌های فروش با Pandas

چرا این کد کاربردی‌ست؟
- آنالیز سریع فروش با محاسبه درآمد کل
- شناسایی پرفروش‌ترین محصولات با مرتب‌سازی
- قالب حرفه‌ای برای گزارش‌گیری

کاربردهای عملی:
1. گزارش‌گیری ماهانه فروش
2. تحلیل عملکرد محصولات
3. پیش‌بینی موجودی انبار

#pandas | @learnpythonicy

> *برای ذخیره خروجی به Excel: df.to_excel('sales_report.xlsx')*
✔️ بازی تخته و توپ با پایتون (مشابه Breakout)

راه‌اندازی بازی:
1. نصب کتابخانه:
pip install pygame


🎮 ویژگی‌های بازی:
- حرکت تخته با کلیدهای چپ/راست
- حذف آجرها هنگام برخورد توپ
- سیستم امتیازدهی (هر آجر 10 امتیاز)
- پایان بازی وقتی توپ به پایین صفحه برسد
- پیام پیروزی وقتی همه آجرها شکسته شوند

#pygame | @learnpythonicy

> *برای اضافه کردن صدا: pygame.mixer.Sound() را بررسی کنید!* 🔊