ترفندهای برنامه‌نویسی
170 subscribers
27 photos
3 videos
22 files
614 links
Download Telegram
Forwarded from Django Expert (Boby Cloud)
✔️ شاید تا الان براتون پیش اومده باشه که موقع نوشتن حلقه‌های for در پایتون، با خودتون فکرکنید که شاید راه‌های بهتری هم وجود داشته باشه.

در این مقاله ۳۰ مثال پایتونیک مختلف رو بررسی میکنیم تا از نوشتن حلقه‌های for اجتناب کنیم. مثال‌هایی که با استفاده از توابع built-in پایتون به دلیل پیاده‌سازی‌های داخلی پایتون (cpython) پرفورمنس بهتری دارن تا روش های functional programming که در کامیونیتی پایتون و متدهای built-in پایتون وجود داره و ...

توضیحات بیشتر همراه با مثال‌های مختلف رو می‌تونید در این مقاله مطالعه کنید:
👉 30 Pythonic Ways To Avoid For Loops — A Decade-Long Journey Best Practices

اگر این مقاله رو مفید دیدید، ممنون میشم به اشتراک بزارید.

#python #best_practice

© @DjangoEx
ترفندهای برنامه‌نویسی
Photo
اگر از وی‌اس‌کد برای نوشتن پروژه‌های جنگو استفاده می‌کنید، در حالت فعلی پلاگین‌های تست که وی‌اس‌کد خودش داره یا می‌تونید براش نصب کنید تست‌های جنگو رو نمی‌شناسن ولی برای اینکه شبیه حالت توی عکس بشه و از این آپشن برخوردار بشید می‌تونید پلاگین
https://marketplace.visualstudio.com/items?itemName=LittleFoxTeam.vscode-python-test-adapter
رو نصب کنید و بعد فایلی که در مسیر
~/.vscode-oss/extensions/littlefoxteam.vscode-python-test-adapter-0.7.1/out/src/unittest/unittestScripts.js
رو ادیت کنید به این صورت که اول این فانکشن
def discover_django(start_dir):
"""Setting DJANGO_SETTINGS_MODULE and call django.setup to locate & run django unittests"""
import contextlib, os
with contextlib.suppress(Exception), open(start_dir + "/manage.py", "r") as management_file:
eval(next((line for line in management_file.readlines() if line.strip().startswith("os.environ.setdefault")), '').strip())
import django
django.setup()
رو تو خط مثلا ۱۶ یا ۱۷ و بالای فایل بنویسید. و بعد هم اون پایین فایل بالاتر از
if action == "discover":
فانکشن پایتونی رو صداش کنید. یبارم وی‌اس‌کد رو ری‌استارت کنید درست میشه.
Forwarded from PyCoders (پایتون) (Ali PrJ)
50 Essential Python Commands.pdf
1.8 MB
🔷️50 دستور ضروری پایتون🐍
🔸️فرمت PDF
🔷️زبان انگلیسی
#BOOK
#کتاب
◦•◉✿ @python_rd ✿◉•◦
Forwarded from PyCoders (پایتون) (Ali PrJ)
Hands_On_Machine_Learning_with_Scikit_Learn,_Keras,_and_TensorFlow.pdf
30.6 MB
📚یادگیری ماشین با استفاده از تنسورفلو، کراس و Scikit
چاپ سوم
جدیدترین نسخه

📅سال چاپ: 2023
📝چاپ کننده: O'Reilly
#book
#کتاب
◦•◉✿ @python_rd ✿◉•◦
Forwarded from PyCoders (پایتون) (Ali PrJ)
PythonNotesForProfessionals.pdf
5.9 MB
فایل PDF کتاب Python Notes for Professionals
دانلود کنید. کتاب با ارزشی هست.
#book
#کتاب
◦•◉✿ @python_rd ✿◉•◦
Forwarded from Seyed Mahdi Notes (Seyed Mahdi)
از آموزش انسیبل مرتضی غافل نشید که خیلی خوب و کاربردی داره انسیبل رو آموزش می ده

https://youtube.com/playlist?list=PLRMCwJJwWR1AKYcUkdcorTFR-bhXUN6oO

لایک هم حتما بزنید تا بهش انگیزه ی بیشتر بدید
Forwarded from Woland's Linux Journal (Woland)
🔵معرفی:
دوستانی که از ویم‌ برای web development استفاده می‌کنن می‌تونن با پلاگینی که من نوشتم امکان live server رو داشته باشند. یعنی این که بصورت هم‌زمان تغییرات کد ر‌و توی مرورگر ببینند
https://github.com/wolandark/vim-live-server
Forwarded from Linuxor ?
Bash Notes For Professionals

یکی از فوق العاده ترین کتاب ها توی زمینه بش که محتواش از مستندات Stack Overflow جمع آوری شده.

این کتاب به قدری باحال نوشته شده که صفحه استارتشو اگه یه نگاه بندازید ؛ دیگه تمومه تبریک میگم یه بش کار شدید...

🐧 @Linuxor
Forwarded from Linuxor ?
Bash[Telegram @Linuxor].pdf
1.7 MB
اول swap بود
توی لینوکس اینطوری دیدن که اطلاعاتی که توی رم میرن به صورت page درنظر گرفته میشن و خب ایده این بود که اگر ما کلی اطلاعات وارد رم کردیم و در واقع page ها زیاد شدن و رم داره به سمت پر شدن پیش می‌ره باید چیکار کرد؟ یک سری سرویس oom killer یا همچین چیزی درست کردن که نذازه رم پر بشه و سیستم هنگ کنه و از دست بره بلکه بیان در یک مرحله‌ی حساس و یک خط قرمز که رسید pageهای قدیمی‌تر که باز هستن رو کیل کنند
سوآپ چی شد؟ گفتن خب همون اول نیایم کیل کنیم، پیج‌های قدیمی رو میفرستیم روی هارد سیستم و پارتیشن سوآپ که یجوری رم مجازی هست. این برای مواقعی که رم خیلی زیادی لازم میشد اما همه‌ی اطلاعات رم رو نیازی نبود در سرعت بالا استفاده کنیم خیلی خوب جواب میداد ولی سرعتش وابسته به سرعت هارد دیسک هست که امروزه با اومدن SSD این سرعت خیلی سریع شده ولی اصلا قابل قیاس با سرعت رم نیست. بازم اگر اطلاعات زیاد بشه اون بحث کیلر مطرح میشه

بعدا zsawp اضافه شد، تو این یکی گفتن خب بیایم قبل از استفاده از پارتیشن سوآپ یک حرکتی بزنیم، اطلاعات یا همون پیج‌ها رو فشرده کنیم ولی نفرستیم روی هارد، اول توی همون رم نگهداری میکنیم و اگر دیدیم رم داره پر میشه میفرستیم روی سوآپ و البته فشرده شده هم میفرستیم روی سوآپ، اینطوری باز سرعت بهتره چراکه هنوز اطلاعات توی رم هستن و کمتر به پارتیشن سوآپ میرن اما یک هزینه‌ی کمپرس و دیکمپرس شدن اضافه شده که البته به اون سرعت بدست آمده کاملا میارزه این هزینه

و حالا zram چیه؟ یکی پیدا شد گفت آقا ما اصلا پارتیشن سوآپ نسازیم، هرچی هست توی همین رم باشه و همون فلسفه فشرده کردن pageهای بلا استفاده رو پیاده سازی کردن و نتیجه رو توی رم جاسازی میکنن فقط برای سیستم یک پارتیشن سوآپ مجازی میسازن که فکر کنه سوآپ داره

کرنل لینوکس در حالت پیشفرض (اکثر توزیع‌ها) روی حالت zsawp هست و این برای اکثر اوقات گزینه‌ی خوبی هست چون هم پارتیشن سوآپ داره که پشتیبانی بهتری از رم داشته باشه و هم در عمل خیلی کمتر از پارتیشن سوآپ داره استفاده می‌کنه و بیشتر اوقات با همون فشرده کردن و روی رم نگهداشتن کار حل میشه، اما خب بک‌آپ پارتیشن سوآپ رو داره و صرفا هم منطقش این نیست که خب تا رم زیادی پر نشده از سوآپ استفاده نمیکنم، نه! اگر اطلاعات فشرده شده روی رم مدت زیادی بلا استفاده بمونه فارغ از اینکه ممکنه رم خیلی فضای خالی زیادی داشته باشه، کرنل این پیج‌های فشرده و بی‌استفاده رو می‌فرسته روی پارتیشن سوآپ و در نتیجه مقداری io یا rw با هارد دیسک انجام میشه که یکم سرعت کند و البته اگر نگران SSD هستین اثر منفی روی طول عمرش داره.