10کتاب ارزشمند اما رایگان پایتون
1. Think Python
❯ v2 (PDF)
❯ v3 (HTML)
2. Exploring Python Basics
Publisher: Manning
https://www.manning.com/books/exploring-python-basics
3. Clean Code in Python
Publisher: Packt
https://packtpub.com/free-ebook/clean-code-in-python/9781788835831
4. Automate the Boring Stuff with Python
Publisher: No Starch Press
https://automatetheboringstuff.com
5. The Hitchhiker's Guide to Python
Publisher: O'Reilly
https://docs.python-guide.org/
6. Explore Data with Python
Publisher: Manning
https://www.manning.com/books/exploring-data-with-python
7. Learn More Python 3 The Hard Way
https://learncodethehardway.org/more-python-book/
8. The Big Book of Small Python Projects
https://inventwithpython.com/bigbookpython/
9. The Recursive Book of Recursion
https://inventwithpython.com/recursion/
10. Python beyond the Basics
https://inventwithpython.com/beyond/
#Python #DataScience
#MachineLearning #AI
🆔 @code_pedia
1. Think Python
❯ v2 (PDF)
❯ v3 (HTML)
2. Exploring Python Basics
Publisher: Manning
https://www.manning.com/books/exploring-python-basics
3. Clean Code in Python
Publisher: Packt
https://packtpub.com/free-ebook/clean-code-in-python/9781788835831
4. Automate the Boring Stuff with Python
Publisher: No Starch Press
https://automatetheboringstuff.com
5. The Hitchhiker's Guide to Python
Publisher: O'Reilly
https://docs.python-guide.org/
6. Explore Data with Python
Publisher: Manning
https://www.manning.com/books/exploring-data-with-python
7. Learn More Python 3 The Hard Way
https://learncodethehardway.org/more-python-book/
8. The Big Book of Small Python Projects
https://inventwithpython.com/bigbookpython/
9. The Recursive Book of Recursion
https://inventwithpython.com/recursion/
10. Python beyond the Basics
https://inventwithpython.com/beyond/
#Python #DataScience
#MachineLearning #AI
🆔 @code_pedia
🔥5👍4
🐍 نکات و ترفندهای پایتون
امروز با ۴ تکنیک کاربردی #پایتون آشنا میشوید که کدهایتان را حرفهایتر میکند:
🔄 تعویض مقادیر بدون متغیر موقت
📋 چک کردن چند شرط به زیبایی
🔤 اتصال رشتهها با کارایی بالا
🎯 بازیابی آخرین عنصر لیست با چسبندگی
نکته طلایی: از enumerate برای دریافت ایندکس و مقدار همزمان استفاده کنید:
#Python #Programming #CodingTips #PythonTricks
🆔@code_pedia
امروز با ۴ تکنیک کاربردی #پایتون آشنا میشوید که کدهایتان را حرفهایتر میکند:
🔄 تعویض مقادیر بدون متغیر موقت
a, b = 10, 20
a, b = b, a # حالا a=20 و b=10
📋 چک کردن چند شرط به زیبایی
color = "red"
if color in ["red", "blue", "green"]:
print("رنگ معتبر است")
🔤 اتصال رشتهها با کارایی بالا
words = ["Python", "Tips", "Tricks"]
result = " ".join(words) # "Python Tips Tricks"
🎯 بازیابی آخرین عنصر لیست با چسبندگی
numbers = [1, 2, 3, 4, 5]
last = numbers[-1] # 5
two_last = numbers[-2:] # [4, 5]
نکته طلایی: از enumerate برای دریافت ایندکس و مقدار همزمان استفاده کنید:
for idx, value in enumerate(["a", "b", "c"]):
print(f"ایندکس: {idx}, مقدار: {value}")
#Python #Programming #CodingTips #PythonTricks
🆔@code_pedia
❤4🔥2
🐍 نکات و ترفندهای پایتون
با ۴ تکنیک کاربردی دیگر پایتون آشنا شوید:
🌀 چک کردن یک شرط در تمامی عناصر لیست
🔄 چرخش و برعکس کردن رشتهها
💡 استفاده از get() برای دیکشنریها
🔢 تولید اعداد تصادفی با seed ثابت
نکته طلایی:** از
#Python #Programming #CodingTips #PythonTricks
🆔@code_pedia
با ۴ تکنیک کاربردی دیگر پایتون آشنا شوید:
🌀 چک کردن یک شرط در تمامی عناصر لیست
numbers = [2, 4, 6, 8]
all_even = all(x % 2 == 0 for x in numbers) # True
🔄 چرخش و برعکس کردن رشتهها
text = "Python"
reversed_text = text[::-1] # "nohtyP"
💡 استفاده از get() برای دیکشنریها
data = {"name": "Ahmed", "age": 25}
city = data.get("city", "قاهره") # "قاهره"🔢 تولید اعداد تصادفی با seed ثابت
import random
random.seed(42)
print(random.randint(1, 100)) # همیشه یک عدد ثابت
نکته طلایی:** از
zip برای پیمایش همزمان چند لیست استفاده کنید:names = ["Ali", "Sara"]
ages = [25, 30]
for name, age in zip(names, ages):
print(f"{name}: {age} سال")
#Python #Programming #CodingTips #PythonTricks
🆔@code_pedia
❤1👌1
🐍 آنچه در پایتون ۳.۱۴ جدید است
پایتون ۳.۱۴ با بهبودهای عملکردی و قابلیتهای جدید ارائه شده است:
⚡ بهبودهای عملکرد:
•سرعت اجرای کلی ۵-۱۰٪ افزایش یافته
•بهینهسازی مدیریت حافظه
•بهبود عملکرد ماژولهای استاندارد
🆕 ویژگیهای جدید زبان:
•سینتکس پیشرفته برای pattern matching
•قابلیتهای جدید نوعدهی (Type Hints)
•بهبود مدیریت خطاها
📚 کتابخانه استاندارد:
•اضافه شدن ماژول graphlib برای کار با گراف
•بهبودهای asyncio برای برنامهنویسی ناهمگام
•اضافه شدن توابع کمکی جدید در itertools
🔧 تغییرات مهم:
· حذف برخی ماژولهای منسوخ شده
· تغییرات در APIهای قدیمی
· به روزرسانی ماژولهای امنیتی
💡 نکات مهاجرت:
•تست کامل کدهای موجود قبل از ارتقا
•بررسی تغییرات ماژولهای استفاده شده
•به روزرسانی نوعدهیها
این نسخه بر بهبود عملکرد و توسعهپذیری متمرکز است.
#Python #Python314 #Programming #WhatsNew #Coding
🆔@code_pedia
پایتون ۳.۱۴ با بهبودهای عملکردی و قابلیتهای جدید ارائه شده است:
⚡ بهبودهای عملکرد:
•سرعت اجرای کلی ۵-۱۰٪ افزایش یافته
•بهینهسازی مدیریت حافظه
•بهبود عملکرد ماژولهای استاندارد
🆕 ویژگیهای جدید زبان:
•سینتکس پیشرفته برای pattern matching
•قابلیتهای جدید نوعدهی (Type Hints)
•بهبود مدیریت خطاها
📚 کتابخانه استاندارد:
•اضافه شدن ماژول graphlib برای کار با گراف
•بهبودهای asyncio برای برنامهنویسی ناهمگام
•اضافه شدن توابع کمکی جدید در itertools
🔧 تغییرات مهم:
· حذف برخی ماژولهای منسوخ شده
· تغییرات در APIهای قدیمی
· به روزرسانی ماژولهای امنیتی
💡 نکات مهاجرت:
•تست کامل کدهای موجود قبل از ارتقا
•بررسی تغییرات ماژولهای استفاده شده
•به روزرسانی نوعدهیها
این نسخه بر بهبود عملکرد و توسعهپذیری متمرکز است.
#Python #Python314 #Programming #WhatsNew #Coding
🆔@code_pedia
👍5❤1🔥1
💌 چالش هفتگی: من به دوستم یک نامه فرستادم!
یک چالش برنامهنویسی جالب برای تقویت مهارتهای کدنویسی:
🎯 هدف چالش:
برنامهای بنویسید که یک نامه عاشقانه قدیمی را به صورت دیجیتال تولید کند
🛠 تکنیکهای مورد استفاده:
- تولید متن تصادفی
- قالببندی خروجی
- کار با تاریخ و زمان
- مدیریت رشتهها
💡 مثال خروجی:
🚀 سطح: مبتدی - متوسط
#CodingChallenge #Programming #BeginnerFriendly #Python
🆔@code_pedia
یک چالش برنامهنویسی جالب برای تقویت مهارتهای کدنویسی:
🎯 هدف چالش:
برنامهای بنویسید که یک نامه عاشقانه قدیمی را به صورت دیجیتال تولید کند
🛠 تکنیکهای مورد استفاده:
- تولید متن تصادفی
- قالببندی خروجی
- کار با تاریخ و زمان
- مدیریت رشتهها
💡 مثال خروجی:
عزیزم،
امروز 20 مهر 1403 است
و من همچنان تو را
به یاد میآورم...
🚀 سطح: مبتدی - متوسط
#CodingChallenge #Programming #BeginnerFriendly #Python
🆔@code_pedia
❤3👍2
🎲 کاربردهای ماژول Random در پایتون
ماژول random پایتون برای تولید اعداد و انتخابهای تصادفی:
🔧 کاربردهای عملی:
• تولید عدد تصادفی
• انتخاب تصادفی از لیست
• ترتیب تصادفی لیست
• نمونهگیری تصادفی
🎯 کاربردهای واقعی:
· شبیهسازی و بازیها
· تست نرمافزار با داده تصادفی
· تقسیم داده برای یادگیری ماشین
· امنیت (توکنها و کلیدها)
#Python #Random #Programming #Coding
🆔@code_pedia
ماژول random پایتون برای تولید اعداد و انتخابهای تصادفی:
🔧 کاربردهای عملی:
• تولید عدد تصادفی
import random
print(random.randint(1, 100)) # عدد بین ۱ تا ۱۰۰
• انتخاب تصادفی از لیست
colors = ["قرمز", "آبی", "سبز"]
print(random.choice(colors)) # انتخاب یک رنگ
• ترتیب تصادفی لیست
cards = ["A", "K", "Q", "J"]
random.shuffle(cards) # برزدن کارتها
• نمونهگیری تصادفی
sample = random.sample(range(100), 5) # ۵ عدد غیرتکراری
🎯 کاربردهای واقعی:
· شبیهسازی و بازیها
· تست نرمافزار با داده تصادفی
· تقسیم داده برای یادگیری ماشین
· امنیت (توکنها و کلیدها)
#Python #Random #Programming #Coding
🆔@code_pedia
👍2
🐍 نکات و ترفندهای پایتون - روز سوم
۴ تکنیک کاربردی دیگر برای حرفهای شدن در پایتون:
🌀 ادغام دیکشنریها (Python 3.9+)
🔄 چرخش لیست با سرعت
💡 فشرده کردن دو لیست به دیکشنری
🎯 فیلتر کردن None از لیست
نکته طلایی: استفاده از
#Python #Programming #CodingTips #PythonTricks
🆔@code_pedia
۴ تکنیک کاربردی دیگر برای حرفهای شدن در پایتون:
🌀 ادغام دیکشنریها (Python 3.9+)
dict1 = {"a": 1, "b": 2}
dict2 = {"c": 3, "d": 4}
merged = dict1 | dict2 # {'a': 1, 'b': 2, 'c': 3, 'd': 4}🔄 چرخش لیست با سرعت
my_list = [1, 2, 3, 4, 5]
rotated = my_list[-2:] + my_list[:-2] # [4, 5, 1, 2, 3]
💡 فشرده کردن دو لیست به دیکشنری
keys = ["name", "age", "city"]
values = ["Ali", 25, "Tehran"]
data = dict(zip(keys, values)) # {'name': 'Ali', 'age': 25, 'city': 'Tehran'}
🎯 فیلتر کردن None از لیست
data = [1, None, "hello", None, 42]
cleaned = list(filter(None, data)) # [1, 'hello', 42]
نکته طلایی: استفاده از
any() و all() برای چک کردن شرایط:numbers = [0, 1, 2, 3]
print(any(numbers)) # True (حداقل یک مقدار True)
print(all(numbers)) # False (همه مقادیر True نیستند)
#Python #Programming #CodingTips #PythonTricks
🆔@code_pedia
👍1
❄️ فریز کردن اپلیکیشنهای پایتون: راهنمای کامل
فریز کردن (Freezing) تبدیل اسکریپتهای پایتون به فایلهای اجرایی مستقل است.
🎯 ابزارهای محبوب فریز کردن:
• PyInstaller - ساده و چندپلتفرمه
• cx_Freeze - قابل تنظیم و سبک
• PyOxidizer - مدرن و پرسرعت
🛠️ مزایای فریز کردن:
· اجرا بدون نیاز به نصب پایتون
· توزیع آسان بین کاربران
· محافظت از سورس کد (نسبی)
⚡ نکات مهم:
· تست روی سیستمعامل هدف
· مدیریت فایلهای استاتیک
· بهینهسازی حجم فایل نهایی
#Python #Packaging #Freezing #PyInstaller #Development
🆔@code_pedia
فریز کردن (Freezing) تبدیل اسکریپتهای پایتون به فایلهای اجرایی مستقل است.
🎯 ابزارهای محبوب فریز کردن:
• PyInstaller - ساده و چندپلتفرمه
pyinstaller --onefile script.py
• cx_Freeze - قابل تنظیم و سبک
cxfreeze script.py --target-dir dist
• PyOxidizer - مدرن و پرسرعت
pyoxidizer build
🛠️ مزایای فریز کردن:
· اجرا بدون نیاز به نصب پایتون
· توزیع آسان بین کاربران
· محافظت از سورس کد (نسبی)
⚡ نکات مهم:
· تست روی سیستمعامل هدف
· مدیریت فایلهای استاتیک
· بهینهسازی حجم فایل نهایی
#Python #Packaging #Freezing #PyInstaller #Development
🆔@code_pedia
❤4
🐍 پایتون ۳.۱۴ و پایان GIL: انقلابی در برنامهنویسی موازی
پایتون ۳.۱۴ با حذف Global Interpreter Lock (GIL) تحول بزرگی ایجاد میکند:
🎯 GIL چیست؟
· قفلی که اجرای همزمان تردها در پایتون را محدود میکرد
· مانع اصلی استفاده از چندین هسته CPU
· دلیل کندی برنامههای multi-threaded
⚡ تاثیرات حذف GIL:
· اجرای واقعی موازی تردها
· استفاده کامل از چندین هسته پردازنده
· بهبود عملکرد برنامههای CPU-intensive
🛠️ مثال عملی:
💡 مزایای کلیدی:
· سرعت بالاتر برای محاسبات سنگین
· رقابت بهتر با Rust, Go, C++
· امکان پردازش موازی واقعی در Data Science
#Python #GIL #Multithreading #Performance #DataScience
🆔@code_pedia
پایتون ۳.۱۴ با حذف Global Interpreter Lock (GIL) تحول بزرگی ایجاد میکند:
🎯 GIL چیست؟
· قفلی که اجرای همزمان تردها در پایتون را محدود میکرد
· مانع اصلی استفاده از چندین هسته CPU
· دلیل کندی برنامههای multi-threaded
⚡ تاثیرات حذف GIL:
· اجرای واقعی موازی تردها
· استفاده کامل از چندین هسته پردازنده
· بهبود عملکرد برنامههای CPU-intensive
🛠️ مثال عملی:
import threading
import time
def task():
# حالا واقعاً موازی اجرا میشود!
pass
# اجرای همزمان روی چندین هسته
threads = []
for i in range(4):
t = threading.Thread(target=task)
threads.append(t)
t.start()
💡 مزایای کلیدی:
· سرعت بالاتر برای محاسبات سنگین
· رقابت بهتر با Rust, Go, C++
· امکان پردازش موازی واقعی در Data Science
#Python #GIL #Multithreading #Performance #DataScience
🆔@code_pedia
👍4