کانال مهرداد لینوکس
3.5K subscribers
714 photos
25 videos
8 files
551 links
لینوکس حرفه ای و اخبار فنی به زبان ساده
تمام محتوای کانال تحت مجوز کرییتیو کامنز (Creative Commons license) CC BY قابل استفاده است

هشتگ:
#Linux
#AI
#Python
#Programming
#DevOps
#دیوار_لینوکس
#Utility
Download Telegram
❇️ برای پردازش موازی در #پایتون از multiprocessing استفاده میکردیم

در Python 3.12 مفهوم sub interpreters که از per-interpreter GIL برای نوشتن parallel code های سریع‌تر از multiprocessing معرفی شد

در Python 3.13 مفهوم free-threading که اختیاری GIL را حذف و واقعا parallel میشه

⁉️ آآیا این دو جایگزین هم هستند؟
🔥 جواب خیر : هدف ها متفاوت ، مکمل هم اند

در Sub Interpreters:
💠با Isolation جداگانه اجرا ، امنیت افزایش جلوگیری تعاملات ناخواسته
💠هزینه سربار Overhead برای وظایف کوچک‌تر.
💠مناسب برای سرورهای وب، اتصالات پایگاه داده، یا فرآیندهای طولانی‌مدت.

در Free-threading:
💠موازی‌سازی واقعی
💠حافظه اشتراکی
💠فعال سازی اختیاری GIL
💠 مناسب وظایف پردازش سنگین مثل محاسبات علمی، پردازش تصویر، یا شبیه‌سازی‌ها.

✳️ ترکیب Sub Interpreters و Free-threading:
🔥 در برخی موارد، ترکیب میتونه عملکرد حتی بهتری را ارائه بده
⁉️ کامل تر با توضیح بیشتر در کامنت ها نوشتم اگر سوالی داشتید در بخش کامنت ها بنویسد با هم در موردش صحبت کنیم 😎
#python
#python
👍5🔥21
به صورت خودکار دیتافریم های Pandas را visualize کن
نصب
یک فایل csv دارید میخواهید آن را تحلیل کنید
سریع ترین روش Autoprofiler است به عکس دقت کنید
pip install -U digautoprofiler

سورس
#python #Jupyter
👍81
This media is not supported in your browser
VIEW IN TELEGRAM
🌲درخت تصمیم (Decision Tree)

🔥 این ابزار برای پشتیبانی از تصمیم است که از درخت‌ها برای مدل کردن استفاده می‌کند
به‌طور خاص در آنالیز تصمیم، برای مشخص کردن استراتژی که با بیشترین احتمال به هدف برسد

کاربرد :
در هوش مصنوعی AI مبحث یادگیری ماشین Machine Learning از نوع نظارت‌شده Supervised برای طبقه‌بندی یا پیش‌بینی بر اساس پاسخ سؤالات قبلی استفاده می‌شود


پکیچ supertree برای Visualize کردن درخت تصمیم با پایتون عالیه

ابزار dtreeviz یک ابزار دیگه عالی در این زمینه

ابزار graphviz که البته مثل قبلی ها تخصصی نیست

البته که با sklearn import tree هم میشه 😎
⁉️به نظر شما بهترین ابزار Visualize کردن Decision Tree کدام است ؟
#AI #python #Machine_Learning #پایتون
3👍2🔥1
زبان RSQL مخفف Restricted SQL برای فیلتر کردن داده‌ها در APIهای RESTful استفاده میشه
مستندات

اگر نیاز به پیاده سازی فیلتر های RQL/RSQL/FIQL
در پایتون روی Django REST framework داشتید

این کتابخانه را یک نگاهی داشته باشید
https://github.com/njoyard/django-rql-filter

#python #django
🔥3👍2
🗓 ابزار mitmproxy یک HTTPS proxy تعاملی برای debugging, testing و ... به کار میره

پلاگین Kubernetes داره و اگر بخواهید یک REST APIs را به صورت خودکار reverse-engineer کنید روی OpenAPI 3.0 به راحتی با پلاگین امکن پذیره

رهگیری، بازرسی، اصلاح و ارسال مجدد ترافیک روی HTTP/2/1, WebSockets یا هر نوع SSL/TLS-protected

🔥 در نسخه ۱۱ پشتیبانی کامل HTTP/3 را اضافه کرده

💠 امکانات مهم :
✳️ رابط Command Line
انواع پیام‌ها از HTML تا Protobuf را به سادگی رمزگشایی، پیام‌های خاصی را در لحظه رهگیری، قبل از رسیدن به مقصد آن‌ها را اصلاح و بعداً آن‌ها را برای یک کلاینت یا سرور دوباره ارسال کنید.

✳️ رابط Web Interface
با رابط وب با mitmweb شبیه به DevTools برای هر برنامه یا دستگاه دیگری به همراه ویژگی های اضافی مانند رهگیری درخواست و ارسال مجدد استفاده کنید

✳️ رابط Python API
با mitmdump افزونه های قدرتمند و اسکریپت mitmproxy میتوانید بنویسد. API اسکریپت کنترل کاملی را بر mitmproxy ادارد و امکان تغییر خودکار پیام‌ها، تغییر مسیر ترافیک، مشاهده پیام‌ها یا امکان اجرای دستورات میدهد

گیت هاب

#امنیت #پایتون #python
1🔥6
کانال مهرداد لینوکس
ابزار Profiling یک ابزار ارزشمند برای هر برنامه نویسی که می‌خواهد عملکرد برنامه‌های خودش را بهبود دهد. با یادگیری نحوه استفاده از Profilerها، می‌توانید Performance bottlenecks را به طور موثر شناسایی و رفع کنید و برنامه‌های سریع‌تر و کارآمدتر بسازید. …
قبلا برای Profiling برای پایتون ابزار Memray را در پست های قبلی معرفی کرده بودم

🔥 ابزار Austin ابزار قوی دیگری با امکانات خیلی خوب

💠 ابزار Austin یک Python frame stack sampler برای CPython با C نوشت شده. نمونه‌ها با خواندن فضای حافظه مجازی مفسر CPython جمع‌آوری می‌شوند تا اطلاعات رشته‌های در حال اجرا را به همراه پشته فریم‌هایی که در حال اجرا هستند بازیابی کنه. از این رو، می توان از Austin برای ساختن پروفایلرهای آماری قدرتمندی استفاده کرد که کمترین تأثیر را بر برنامه های ما دارند و برای استفاده از این ابزار نیازی به ایجاد تغییرات خاصی در کد منبع برنامه Python شما نیست که بتوان اطلاعات خاصی را برای ابزار جمع‌آوری کند.

🗓 ویژگی های کلیدی Austin عبارتند از:
☑️نیاز به تغییر در کد ندارد (Zero instrumentation)
☑️ تاثیر حداقلی
☑️سریع و سبک
☑️پروفایل زمان و حافظه
☑️پشتیبانی داخلی از برنامه های چند فرآیندی (مثل. mod_wsgi).

⁉️سوالی داشتید در بخش کامنت ها بپرسید با هم برسی کنیم 😎

#python #پایتون
👍2🔥1🤯1
تجزیه و تحلیل برای بسته های PyPI پکیچ های پایتونی
🗓 موقع استفاده از یک پکیچ مهمه آمار:
دانلود، توسعه،کابر و ... یک پکیچ را بدانید

🔥 قبل استفاده از یک پکیج آمار پکیچت را دربیار
سایت های زیادی هستند که این اطلاعات را برای شما جمع آوری میکنند مثل:

https://clickpy.clickhouse.com/
https://snyk.io/advisor/python/
https://pypistats.org/top
https://www.pepy.tech/

⚠️ این پست در آینده به روز میشود

⁉️ اگر سایت دیگری میشناسید یا سوالی داشتید در بخش کامنت ها بپرسید با هم بررسی کنیم 😎

#پایتون #python #برنامه_نویسی
👍6
دربین Python Node Editor ها Nodezator امکانات قوی داره.

نود ادیتور ها با اتصال توابع پایتون به صورت visual کار می کنند تا رفتار پارامتری / داده / برنامه ها / قطعه های انعطاف پذیر تولید کنند.این ابزارها به شما امکان سازماندهی و کار با کدهای Python قابل استفاده مجدد را در یک شبکه پویا می دهد. رابط کاربری گرافیکی بصری و رویکرد ماژولار آن می تواند روند توسعه پایتون شما را ساده تر کند.


✳️ نصب :
pip install --upgrade nodezator


🗓 دیدن این فیلم در یوتیوب میتواند درک ابزار را بهتر و قدرت آن را بهتر نمایش دهد

ابزار های مشابه :
https://github.com/bhowiebkr/python-node-editor
https://github.com/hoffstadt/DearPyGui/
https://github.com/GafferHQ/gaffer
https://pypi.org/project/nodeeditor/

⁉️ اگر سوالی داشتید در بخش کامنت ها بپرسید

#python
👍5🔥1
پایتون ۳.۱۴ و مفسر Tail-Call
یکی از ویژگی های مهم نسخه بعدی Python
پشتیبانی از Tail-Call Optimization (TCO) است.

📈یک تکنیک بهینه‌سازی برای اجرای کارآمدتر کد کاهش هزینه‌ی اجرای توابع بازگشتی

🗓 مفسر CPython از TCOپشتیبانی نمی‌کنه، چون پایتون روی Debugging و traceback خوانا متمرکزه
در نسخه‌ی جدید Tail-Call Interpreter جدید اضافه شده

🔥 درک مفهوم Tail Call
ویژگی Tail Call به فراخوانی تابعی گفته می‌شود که آخرین عملیات قبل از بازگشت مقدار در تابع باشد. به عنوان مثال:
def tail_recursive(n, acc=1):
if n == 0:
return acc
return tail_recursive(n - 1, acc * n) # این یک Tail Call است


💠 به‌طور معمول، در هر فراخوانی جدید، یک فریم جدید روی پشته‌ی فراخوانی (Call Stack) ذخیره می‌شود. این موضوع باعث مصرف زیاد حافظه و احتمال رخ دادن خطای Stack Overflow در بازگشت‌های عمیق می‌شود.

💠 در Tail-Call Optimization (TCO)، به‌جای ایجاد یک فریم جدید برای هر فراخوانی، همان فریم قبلی مجدداً استفاده می‌شود. این کار از پر شدن پشته جلوگیری کرده و عملکرد را بهبود می‌بخشد.

❤️ ممنون از حمایت هاتون 💐🌺
#Python
#پایتون
7👍4🔥2
مدیر بسته Pip در Python بسته‌های نرم‌افزاری را از
PyPI (Python Package Index)
نصب، به‌روزرسانی و حذف میکنه.
☑️در pip install، از براکت‌ها [ ] برای نصب نسخه‌های خاص یا افزونه‌ها (extras) یک بسته استفاده میشه
pip install requests[security]

در اینجا، پکیج requests به همراه بسته‌های اضافی مرتبط با ویژگی‌های امنیتی نصب میشه

⚠️ در شل ZSH در لینوکس
اگر بخواهید از [] در شل ZSH استفاده کنید چون ZSH از [] برای globbing / pattern matching استفاده میکنه باید به صورت :
pip install 'requests[security]'

استفاده بشه
💡این از یک Tips and Tricks پایتونی لینوکس امیدوارم مفید باشه
به نظر شما باز هم از این نکات و ترفندها بنویسم؟


❤️ ممنون از حمایت هاتون 💐🌺
#Python #پایتون
19👍7
⁉️ روی سرور یا توی Terminal یک فایل Jupyter از پسوندهای ipynb بخواهید بخوانید 🤔

یک چیزی مثل cat از چی استفاده میکنید ؟
🔥 افرین nbcat

برای نصب و اجرا
pip install nbcat
nbcat example.ipynb


ژوپیتر نوت بوک (Jupyter Notebook) پایتون یک برنامه وب است که میتونید کد بنویسید و اجرا کنید
در فایل های ژوپیتر کد و خروجی هر دوتاشون کنار هم نمایش داده میشن

@MehrdadLinuxchannel
#linux #python
👍141
🎉 نسخه جدید MicroPython منتشر شد!

🧠 ‏MicroPython چیه؟
یه نسخه سبک از زبان پایتونه که برای اجرا روی سخت‌افزارهای کوچیک طراحی شده؛ مثل بردهای ESP32 یا Raspberry Pi Pico.


یعنی چی؟ یعنی باهاش می‌تونی وسایل واقعی رو با پایتون کنترل کنی! مثلاً:
💡 روشن و خاموش کردن LED
🌡 خوندن دمای محیط
📶 اتصال به وای‌فای
🕹 ساخت گجت‌های هوشمند

🔥در نسخه جدیدش (v1.25):
سرعت بهتر
سیستم فایل فقط‌خواندنی برای اجرای سریع‌تر
پشتیبانی از WebAssembly (اجرای MicroPython توی مرورگر!)
و کلی قابلیت دیگه برای آینده اینترنت اشیاء...

📌 اگه به پایتون، سخت‌افزار، IoT یا ساخت ابزارهای باحال علاقه‌داری، MicroPython یه دنیای هیجان‌انگیز برات باز می‌کنه.

🌐 سایت رسمی
🔖 گیت‌هاب نسخه جدید
@MehrdadLinuxchannel
#python
👍14🔥4