✔️ مثال ساده از ماژول os - مدیریت فایلها و پوشهها
کاربردهای اصلی
- مدیریت فایلهای سیستم
- تغییر مسیر دایرکتوری کار
- اجرای دستورات
نکته
- برای حذف فایل:
- برای بررسی وجود فایل:
#os | @learnpythonicy
> این ماژول برای اتوماسیون کارهای سیستمی عالی است!
کاربردهای اصلی
- مدیریت فایلهای سیستم
- تغییر مسیر دایرکتوری کار
- اجرای دستورات
نکته
- برای حذف فایل:
os.remove("فایل.txt") - برای بررسی وجود فایل:
os.path.exists("فایل.txt") #os | @learnpythonicy
> این ماژول برای اتوماسیون کارهای سیستمی عالی است!
✔️ تولید اعداد تصادفی در پایتون با ۷ روش حرفهای!
برای تولید اعداد تصادفی در پایتون، این تکنیکهای کاربردی را امتحان کنید:
1️⃣ ماژول
2️⃣ محدوده عددی
3️⃣ انتخاب تصادفی از لیست
4️⃣ نمونهگیری بدون جایگزینی
5️⃣ توزیع نرمال
6️⃣ برای نتایج تکرارپذیر
7️⃣ ماژول
🗝 روش ویژه: NumPy برای آرایههای تصادفی
نکات طلایی
- برای امنیت از
- برای علم داده از
- دستور
#PythonMagic | #random | #seed | #secrets | #numpy | 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
🪂 سرگرمی با ماژول مخفی پایتون!
چه اتفاقی میافته؟
- یه صفحه وب با کمیک xkcd باز میشه
- درباره قابلیتهای جالب پایتون توضیح میده
#antigravity | @learnpythonicy
import antigravity
چه اتفاقی میافته؟
- یه صفحه وب با کمیک xkcd باز میشه
- درباره قابلیتهای جالب پایتون توضیح میده
#antigravity | @learnpythonicy
✔️ پردازش تصویر با OpenCV و Matplotlib در پایتون
🔍 مراحل پردازش:
1️⃣ خواندن تصویر از مسیر مشخص
2️⃣ تبدیل رنگ BGR به RGB برای نمایش صحیح
3️⃣ تبدیل به تصویر خاکستری
4️⃣ اعمال فیلتر گوسی برای بلور کردن
5️⃣ استخراج لبهها با الگوریتم Canny
6️⃣ نمایش تمام مراحل در یک پنجره
کاربردها:
- بینایی ماشین
- پردازش تصاویر پزشکی
- سیستمهای تشخیص چهره
#cv2 | #numpy | #matplotlib | #opencv | @learnpythonicy
#بدانیم | #پردازش_تصویر | آموزش پایتون
🔍 مراحل پردازش:
1️⃣ خواندن تصویر از مسیر مشخص
2️⃣ تبدیل رنگ BGR به RGB برای نمایش صحیح
3️⃣ تبدیل به تصویر خاکستری
4️⃣ اعمال فیلتر گوسی برای بلور کردن
5️⃣ استخراج لبهها با الگوریتم Canny
6️⃣ نمایش تمام مراحل در یک پنجره
کاربردها:
- بینایی ماشین
- پردازش تصاویر پزشکی
- سیستمهای تشخیص چهره
#cv2 | #numpy | #matplotlib | #opencv | @learnpythonicy
#بدانیم | #پردازش_تصویر | آموزش پایتون
✔️ تشخیص اشیا در زمان واقعی با YOLOv8 و OpenCV
ویژگیهای کلیدی
- پیشرفتهترین مدل تشخیص اشیا (YOLOv8)
- پردازش زنده با وبکم
- دقت بالا در شناسایی 80 کلاس مختلف
- بهینهسازی شده برای اجرا روی CPU/GPU
کاربردهای انقلابی
- سیستمهای نظارت هوشمند
- رباتیک و خودروهای خودران
- تحلیل تصاویر ماهوارهای
نصب:
🎬 پیشنهاد محتوای ویدیویی:
- نمایش عملکرد زنده روی اشیا مختلف
- مقایسه دقت YOLOv8 با نسخههای قبلی
- آموزش تنظیم پارامترها برای سناریوهای خاص
#ultralytics | #cv2 | @learnpythonicy
ویژگیهای کلیدی
- پیشرفتهترین مدل تشخیص اشیا (YOLOv8)
- پردازش زنده با وبکم
- دقت بالا در شناسایی 80 کلاس مختلف
- بهینهسازی شده برای اجرا روی CPU/GPU
کاربردهای انقلابی
- سیستمهای نظارت هوشمند
- رباتیک و خودروهای خودران
- تحلیل تصاویر ماهوارهای
نصب:
pip install ultralytics opencv-python
🎬 پیشنهاد محتوای ویدیویی:
- نمایش عملکرد زنده روی اشیا مختلف
- مقایسه دقت YOLOv8 با نسخههای قبلی
- آموزش تنظیم پارامترها برای سناریوهای خاص
#ultralytics | #cv2 | @learnpythonicy
🎭 تشخیص احساسات چهره با نمایش همزمان تصویر و نتایج
✔️ ویژگیهای منحصر به فرد
- نمایش زنده تصویر دوربین + نمودار احساسات در یک پنجره
- آپدیت لحظهای نمودار با تغییر حالات چهره
- بهینهسازی عملکرد با
🛠 راهاندازی آسان
1. نصب کتابخانهها:
2. اجرای کد:
#deepface | #cv2 | #matplotlib | #numpy | @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:
چرا این کد کاربردیست؟
- آنالیز سریع فروش با محاسبه درآمد کل
- شناسایی پرفروشترین محصولات با مرتبسازی
- قالب حرفهای برای گزارشگیری
کاربردهای عملی:
1. گزارشگیری ماهانه فروش
2. تحلیل عملکرد محصولات
3. پیشبینی موجودی انبار
#pandas | @learnpythonicy
> *برای ذخیره خروجی به Excel:
df.to_excel('sales_report.xlsx')*✔️ بازی تخته و توپ با پایتون (مشابه Breakout)
راهاندازی بازی:
1. نصب کتابخانه:
🎮 ویژگیهای بازی:
- حرکت تخته با کلیدهای چپ/راست
- حذف آجرها هنگام برخورد توپ
- سیستم امتیازدهی (هر آجر 10 امتیاز)
- پایان بازی وقتی توپ به پایین صفحه برسد
- پیام پیروزی وقتی همه آجرها شکسته شوند
#pygame | @learnpythonicy
> *برای اضافه کردن صدا:
راهاندازی بازی:
1. نصب کتابخانه:
pip install pygame
🎮 ویژگیهای بازی:
- حرکت تخته با کلیدهای چپ/راست
- حذف آجرها هنگام برخورد توپ
- سیستم امتیازدهی (هر آجر 10 امتیاز)
- پایان بازی وقتی توپ به پایین صفحه برسد
- پیام پیروزی وقتی همه آجرها شکسته شوند
#pygame | @learnpythonicy
> *برای اضافه کردن صدا:
pygame.mixer.Sound() را بررسی کنید!* 🔊امروز تو یه کدنویسی به ارور برخوردم
برای همین پست امروز مربوط خطاهای پایتون هست😌🤓
برای همین پست امروز مربوط خطاهای پایتون هست😌🤓
✔️ 5 خطای پرکاربرد پایتون که همه میبینن!
#error | #خطا | @learnpythonicy | #codeBites
> *برای مشاهده کامل خطاها:
1️⃣ NameError:
"وقتی از متغیری استفاده کنی که تعریفش نکردی!"
print(undefined_var) # خطا!
2️⃣ IndentationError:
"فراموش کردن تو رفتگی یا فاصلههای نادرست"
if True:
print("Hello") # خطا!
3️⃣ TypeError:
"انجام عملیات روی نوعهای ناسازگار"
"10" + 5 # خطا!
4️⃣ IndexError:
"دسترسی به خونهای از لیست که وجود نداره"
lst = [1, 2]
print(lst[10]) # خطا!
5️⃣ KeyError:
"درخواست کلیدی که توی دیکشنری نیست"
data = {"name": "Ali"}
print(data["age"]) # خطا!
#error | #خطا | @learnpythonicy | #codeBites
> *برای مشاهده کامل خطاها:
dir(__builtins__)*✔️ توضیح کد پردازش تصویر با OpenCV:
این کد سه عملیات اصلی روی تصاویر انجام میدهد:
1. خواندن تصویر از فایل:
2. تغییر اندازه تصویر به 300×300 پیکسل:
3. برش قسمتی از تصویر (مستطیل با مختصات مشخص):
4. نمایش نتیجه در پنجره جدید:
🔅 نکات کاربردی:
- اگر تصویر بارگذاری نشود،
- برای ذخیره تصویر پردازش شده از
- اعداد در برش تصویر به صورت
#cv2 | @learnpythonicy
> *این کد پایهای برای پروژههای بینایی ماشین و ویرایش تصویر است!*
این کد سه عملیات اصلی روی تصاویر انجام میدهد:
1. خواندن تصویر از فایل:
image = cv2.imread('photo.jpg') # بارگذاری تصویر از مسیر مشخص
2. تغییر اندازه تصویر به 300×300 پیکسل:
resized = cv2.resize(image, (300, 300)) # تغییر ابعاد با حفظ نسبت
3. برش قسمتی از تصویر (مستطیل با مختصات مشخص):
cropped = image[100:400, 200:500] # ارتفاع: 100-400px، عرض: 200-500px
4. نمایش نتیجه در پنجره جدید:
cv2.imshow('Result', resized) # نمایش تصویر تغییرسایز شده
cv2.waitKey(0) # توقف برنامه تا فشار کلید توسط کاربر
🔅 نکات کاربردی:
- اگر تصویر بارگذاری نشود،
image برابر None خواهد بود - برای ذخیره تصویر پردازش شده از
cv2.imwrite() استفاده کنید - اعداد در برش تصویر به صورت
[Y_start:Y_end, X_start:X_end] هستند #cv2 | @learnpythonicy
> *این کد پایهای برای پروژههای بینایی ماشین و ویرایش تصویر است!*
✔️ تولید نقاشی دیجیتال با پایتون (ترکیب OpenCV + تصادفیسازی)
ویژگیها
1. تولید هنر دیجیتال کاملاً تصادفی
2. ترکیب رنگهای رندوم در هر اجرا
3. خروجی منحصر به فرد در هر بار اجرا
4. ذخیره خودکار اثر تولیدی
نحوه کار
- ساخت بوم سفید 500x500 پیکسلی
- رسم 50 دایره با رنگ و موقعیت تصادفی
- اضافه کردن امضای "Python Art"
- نمایش و ذخیره نتیجه
#cv2 | #numpy | @learnpythonicy
> *برای اثر پیچیدهتر، میتوانید خطوط/مثلثهای رندوم هم اضافه کنید!*
ویژگیها
1. تولید هنر دیجیتال کاملاً تصادفی
2. ترکیب رنگهای رندوم در هر اجرا
3. خروجی منحصر به فرد در هر بار اجرا
4. ذخیره خودکار اثر تولیدی
نحوه کار
- ساخت بوم سفید 500x500 پیکسلی
- رسم 50 دایره با رنگ و موقعیت تصادفی
- اضافه کردن امضای "Python Art"
- نمایش و ذخیره نتیجه
#cv2 | #numpy | @learnpythonicy
> *برای اثر پیچیدهتر، میتوانید خطوط/مثلثهای رندوم هم اضافه کنید!*
❤4
آموزش پایتون
✔️ تولید نقاشی دیجیتال با پایتون (ترکیب OpenCV + تصادفیسازی) ویژگیها 1. تولید هنر دیجیتال کاملاً تصادفی 2. ترکیب رنگهای رندوم در هر اجرا 3. خروجی منحصر به فرد در هر بار اجرا 4. ذخیره خودکار اثر تولیدی نحوه کار - ساخت بوم سفید 500x500 پیکسلی - رسم 50…
import cv2
import numpy as np
# ایجاد بوم سفید
canvas = np.ones((500, 500, 3), dtype=np.uint8) * 255
# تولید 50 دایره رندوم
for _ in range(50):
color = np.random.randint(0, 256, 3).tolist()
center = (np.random.randint(50, 450), np.random.randint(50, 450))
radius = np.random.randint(10, 50)
cv2.circle(canvas, center, radius, color, -1) # -1 یعنی دایره پررنگ
# اضافه کردن متن هنری
font = cv2.FONT_HERSHEY_SCRIPT_COMPLEX
cv2.putText(canvas, 'Python Art', (150, 250), font, 2, (0, 0, 0), 2)
# نمایش اثر هنری
cv2.imshow('Digital Painting', canvas)
cv2.waitKey(0)
cv2.imwrite('python_art.jpg', canvas) # ذخیره اثر
❤3
✔️ سیستم تشخیص حرکت با OpenCV در پایتون
▪️ ویژگیهای پروژه
- تشخیص حرکت در زمان واقعی
- فیلتر نویز با گوسیبلور
- مستطیل سبز حول ناحیه متحرک
- هشدار متنی هنگام تشخیص حرکت
▪️ کاربردها
1. سیستمهای امنیتی
2. نظارت بر حیوانات خانگی
3. شمارش افراد
4. تعامل حرکتی با کامپیوتر
▪️ ایده توسعه
- اضافه کردن ذخیره خودکار ویدئو هنگام حرکت
- ارسال نوتیفیکیشن از طریق تلگرام
- حساسیت قابل تنظیم با اسلایدر
#cv2 | @learnpythonicy
import cv2
# باز کردن دوربین
cap = cv2.VideoCapture(0)
# خواندن اولین فریم (برای مقایسه بعدی)
ret, frame1 = cap.read()
frame1 = cv2.flip(frame1, 1)
gray1 = cv2.cvtColor(frame1, cv2.COLOR_BGR2GRAY)
gray1 = cv2.GaussianBlur(gray1, (21, 21), 0)
while True:
ret, frame2 = cap.read()
if not ret:
break
frame2 = cv2.flip(frame2, 1)
gray2 = cv2.cvtColor(frame2, cv2.COLOR_BGR2GRAY)
gray2 = cv2.GaussianBlur(gray2, (21, 21), 0)
# محاسبه تفاوت بین دو فریم
diff = cv2.absdiff(gray1, gray2)
thresh = cv2.threshold(diff, 25, 255, cv2.THRESH_BINARY)[1]
thresh = cv2.dilate(thresh, None, iterations=2)
# پیدا کردن کانتور حرکتها
contours, _ = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
motion_detected = False
for contour in contours:
if cv2.contourArea(contour) < 1000:
continue
motion_detected = True
(x, y, w, h) = cv2.boundingRect(contour)
cv2.rectangle(frame2, (x, y), (x+w, y+h), (0, 255, 0), 2)
if motion_detected:
cv2.putText(frame2, "Motion Detected!", (10, 30), cv2.FONT_HERSHEY_SIMPLEX,
1, (0, 0, 255), 2)
cv2.imshow("Motion Detector", frame2)
# بروزرسانی فریم مرجع
gray1 = gray2
if cv2.waitKey(1) == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
▪️ ویژگیهای پروژه
- تشخیص حرکت در زمان واقعی
- فیلتر نویز با گوسیبلور
- مستطیل سبز حول ناحیه متحرک
- هشدار متنی هنگام تشخیص حرکت
▪️ کاربردها
1. سیستمهای امنیتی
2. نظارت بر حیوانات خانگی
3. شمارش افراد
4. تعامل حرکتی با کامپیوتر
▪️ ایده توسعه
- اضافه کردن ذخیره خودکار ویدئو هنگام حرکت
- ارسال نوتیفیکیشن از طریق تلگرام
- حساسیت قابل تنظیم با اسلایدر
#cv2 | @learnpythonicy
✔️ مثال ساده با ماژول
خروجی نمونه:
کاربرد
- ساخت بازیهای ساده
- نمونهگیری تصادفی از دادهها
- تست نرمافزار با مقادیر تصادفی
#random | @learnpython
> *برای اعداد اعشاری از
random در پایتون import random
# تولید عدد تصادفی بین 1 تا 10
random_number = random.randint(1, 10)
print("عدد تصادفی:", random_number)
# انتخاب تصادفی از لیست
fruits = ["سیب", "موز", "پرتقال", "انگور"]
random_fruit = random.choice(fruits)
print("میوه تصادفی:", random_fruit)
# ترکیب تصادفی لیست
random.shuffle(fruits)
print("لیست ترکیب شده:", fruits)
خروجی نمونه:
عدد تصادفی: 7
میوه تصادفی: پرتقال
لیست ترکیب شده: ['موز', 'انگور', 'سیب', 'پرتقال']
کاربرد
- ساخت بازیهای ساده
- نمونهگیری تصادفی از دادهها
- تست نرمافزار با مقادیر تصادفی
#random | @learnpython
> *برای اعداد اعشاری از
random.uniform(a, b) استفاده کنید!*✔️ تفاوت return و yield در پایتون
🔹 دستور
- عملکرد: تابع را تمام میکند و مقدار را برمیگرداند
- حافظه: فقط یک مقدار را برمیگرداند
- مثال
🔸 دستور
- عملکرد: تابع را موقتاً متوقف میکند و مقدار را برمیگرداند (حالت را حفظ میکند)
- حافظه: مقادیر را یکبهیک تولید میکند (بهینه برای دادههای حجیم)
- مثال
مقایسه کلیدی
| ویژگی |
| تعداد خروجی | یک بار | چندین بار |
| حالت تابع | پاک میشود | حفظ میشود |
| مصرف حافظه | معمولی | بهینه |
| کاربرد | محاسبات ساده | پردازش دادههای حجیم |
#بدانیم | آموزش پایتون
> *از
🔹 دستور
return (خروج معمولی)- عملکرد: تابع را تمام میکند و مقدار را برمیگرداند
- حافظه: فقط یک مقدار را برمیگرداند
- مثال
def sum_numbers(a, b):
return a + b # تابع پایان مییابد
result = sum_numbers(3, 5) # 8
🔸 دستور
yield (تابع مولد - Generator)- عملکرد: تابع را موقتاً متوقف میکند و مقدار را برمیگرداند (حالت را حفظ میکند)
- حافظه: مقادیر را یکبهیک تولید میکند (بهینه برای دادههای حجیم)
- مثال
def count_up_to(n):
i = 1
while i <= n:
yield i # هر بار یک عدد تولید میکند
i += 1
for num in count_up_to(5):
print(num) # چاپ اعداد 1 تا 5
مقایسه کلیدی
| ویژگی |
return | yield || تعداد خروجی | یک بار | چندین بار |
| حالت تابع | پاک میشود | حفظ میشود |
| مصرف حافظه | معمولی | بهینه |
| کاربرد | محاسبات ساده | پردازش دادههای حجیم |
#بدانیم | آموزش پایتون
> *از
yield برای ساخت جریان داده (Data Stream) استفاده میشود!*🤓3
✔️ مقایسه ۴ دستور کلیدی پایتون در یک نگاه
1️⃣
2️⃣
▪️ مقایسه کلی
| Command | نوع مقایسه | کاربرد اصلی |
A. | break | کنترل حلقه | خروج زودرس از حلقه |
B. | continue | کنترل حلقه | رد کردن یک تکرار خاص |
C. | is | هویت شیء | بررسی اشتراک حافظه |
D. | == | مقدار | مقایسه محتوای اشیا |
#continue | #break | #is | Learnpythonicy
1️⃣
break vs continue (حلقهها)# مثال با break (خروج کامل از حلقه)
for i in range(5):
if i == 3:
break # حلقه در i=3 پایان مییابد
print(i)
# خروجی: 0 1 2
# مثال با continue (رد شدن یک تکرار)
for i in range(5):
if i == 3:
continue # i=3 رد میشود
print(i)
# خروجی: 0 1 2 4
2️⃣
is vs == (مقایسه اشیا)a = [1, 2]
b = [1, 2]
c = a
# == مقایسه مقدار
print(a == b) # True (مقادیر یکسان)
# is مقایسه هویت (آدرس حافظه)
print(a is b) # False (دو شیء متفاوت)
print(a is c) # True (اشارهگر به یک شیء)
▪️ مقایسه کلی
| Command | نوع مقایسه | کاربرد اصلی |
A. | break | کنترل حلقه | خروج زودرس از حلقه |
B. | continue | کنترل حلقه | رد کردن یک تکرار خاص |
C. | is | هویت شیء | بررسی اشتراک حافظه |
D. | == | مقدار | مقایسه محتوای اشیا |
#continue | #break | #is | Learnpythonicy