📗 #معرفی_کتاب
Dive Into Design Patterns
کتاب بسیار خوبی در زمینه معرفی الگوهای طراحی (Design Pattern) که میتونه توی طراحی نرمافزارها بهتون کمک بکنه
🔎 @py4ds
Dive Into Design Patterns
کتاب بسیار خوبی در زمینه معرفی الگوهای طراحی (Design Pattern) که میتونه توی طراحی نرمافزارها بهتون کمک بکنه
🔎 @py4ds
🤩1
📗 #معرفی_کتاب
Data Structures & Algorithms in Python
کتاب بسیار خوبی در زمینه معرفی انواع ساختمانهای داده که میتونه برای یادگیری بهتر اونها خصوصا در زبان پایتون بهتون کمک کنه
بخش درختها و الگوریتمها چیزی هست که عموما در مصاحبههای فنی شرکتهای مهم ازشون سوال میشه.
🔎 @py4ds
Data Structures & Algorithms in Python
کتاب بسیار خوبی در زمینه معرفی انواع ساختمانهای داده که میتونه برای یادگیری بهتر اونها خصوصا در زبان پایتون بهتون کمک کنه
بخش درختها و الگوریتمها چیزی هست که عموما در مصاحبههای فنی شرکتهای مهم ازشون سوال میشه.
🔎 @py4ds
🤩1
⬛️ سلام بر کسی که جانش را در راه خدا فدا کرد تا مردم را از جهالت و سرگشتگی گمراهی نجات دهد.
▪️ اربعین حسینی تسلیت باد.
🔎 @py4ds
▪️ اربعین حسینی تسلیت باد.
🔎 @py4ds
👍1
📗 #معرفی_کتاب
Effective Pandas
Matt Harrison
🔺کتاب Effective Pandas قطعا یکی از بهترین منابع یادگیری کتابخانه Pandas هستش
🔺این کتاب به دوستانی که قصد مسلط شدن به Pandas رو دارن توصیه میشه
🔎 @py4ds
Effective Pandas
Matt Harrison
🔺کتاب Effective Pandas قطعا یکی از بهترین منابع یادگیری کتابخانه Pandas هستش
🔺این کتاب به دوستانی که قصد مسلط شدن به Pandas رو دارن توصیه میشه
🔎 @py4ds
🤩1
🔹 اگر تجربه کار با تکنولوژیهایی مثل #داکر یا #کوبرنتیز رو داشته باشید قطعاً با تحریمهایی مبنی بر اجازه پول(pull) کردن ایمیج ها از روی سرویسهایی مثل داکرهاب رو داشتید. یا مثلاً مطالعه داکیومنت بعضی ابزارها یا زبانهای برنامه نویسی!
🔺به نظرم آمریکا بهتره برای نشون دادن حسن نیت تحریمهای اینچنینی رو برداره و اجازه دسترسی به سایتها رو برای ایران باز کنه. چون این مسئله عمدتاً چالشهایی رو برای افرادی از طیف توسعهدهندهها ایجاد میکنه!
🔺توسعه دهندگان ایرانی برای دور زدن این تحریمها عموما از سرویسهایی شبیه https://shecan.ir یا پروکسی کَشها استفاده میکنن. اما خب یه جاهایی هم مشکل به همین راحتی حل نمیشه!
🔺نمونه سایتهایی که شامل این تحریمها هستن کم نیست. سایتها به ظاهر ممکنه باز هم بشن اما امکان دانلود یا pull کردن برای IP ایران ندارن.
https://hub.docker.com/
https://kubernetes.io/
و سایتهایی که مربوط به زبانهای برنامه نویسی هستند مثل:
https://dash.plotly.com/
https://go.dev/doc/
🔺دوست دیگهای میگفت بعضی سرویسها حتی روی ipهای ایران throttling IP فعال کردهان و سرعت دانلود را تا حد زیادی کاهش دادن!
🔎 @py4ds
🔺به نظرم آمریکا بهتره برای نشون دادن حسن نیت تحریمهای اینچنینی رو برداره و اجازه دسترسی به سایتها رو برای ایران باز کنه. چون این مسئله عمدتاً چالشهایی رو برای افرادی از طیف توسعهدهندهها ایجاد میکنه!
🔺توسعه دهندگان ایرانی برای دور زدن این تحریمها عموما از سرویسهایی شبیه https://shecan.ir یا پروکسی کَشها استفاده میکنن. اما خب یه جاهایی هم مشکل به همین راحتی حل نمیشه!
🔺نمونه سایتهایی که شامل این تحریمها هستن کم نیست. سایتها به ظاهر ممکنه باز هم بشن اما امکان دانلود یا pull کردن برای IP ایران ندارن.
https://hub.docker.com/
https://kubernetes.io/
و سایتهایی که مربوط به زبانهای برنامه نویسی هستند مثل:
https://dash.plotly.com/
https://go.dev/doc/
🔺دوست دیگهای میگفت بعضی سرویسها حتی روی ipهای ایران throttling IP فعال کردهان و سرعت دانلود را تا حد زیادی کاهش دادن!
🔎 @py4ds
شکن
تحریم شکن، تحریمهای اینترنتی رو بیاثر کن! - شکن
سامانه «شکن» یک تحریم شکن ایرانی و قانونی است که امکان دسترسی به سایت های تحریم شده را بدون نیاز به ابزارهای ناقض حریم خصوصی و امنیت مانند فیلترشکن، وی پی ان و پراکسی به آسانی و برای استفاده شخصی به رایگان فراهم میکند
👍4
حدود یک ساعت مونده به انتشار رسمی پایتون 3.11
این رویداد از طریق این لینک یوتوب به صورت زنده پخش میشه!
ویژگیهای خیلی خوب و جالبی به این نسخه اضافه شده و همچنین عملکردش نسبت به پایتون 3.10 بین ۱۰ تا ۶۰ درصد در موارد مختلف بهبود پیدا کرده.
با این تفاسیر این نسخه شروع یه فصل جدید در عمر این زبان برنامهنویسی خواهد بود.
به شخصه منتظر انتشار پایتون 3.12 و اوبونتو 24.04 هستم. اتفاقات باحالتری در راه هست...
ویژگیهای پایتون جدید در یک نگاه:
+ Fine-grained error location in tracebacks.
+ ExceptionGroup and the new except* syntax to handle it.
+ A new module to parse TOML.
+ Atomic grouping and possessive quantifiers for regexes.
+ Significant performance improvements.
+ New Self type.
+ Variadic generics.
+ Data class transforms.
هر کدوم از موارد بالا به تنهایی جذاب و جالب هستن و نیاز به یه آموزش جداگانه دارن!
🔎 @py4ds
این رویداد از طریق این لینک یوتوب به صورت زنده پخش میشه!
ویژگیهای خیلی خوب و جالبی به این نسخه اضافه شده و همچنین عملکردش نسبت به پایتون 3.10 بین ۱۰ تا ۶۰ درصد در موارد مختلف بهبود پیدا کرده.
با این تفاسیر این نسخه شروع یه فصل جدید در عمر این زبان برنامهنویسی خواهد بود.
به شخصه منتظر انتشار پایتون 3.12 و اوبونتو 24.04 هستم. اتفاقات باحالتری در راه هست...
ویژگیهای پایتون جدید در یک نگاه:
+ Fine-grained error location in tracebacks.
+ ExceptionGroup and the new except* syntax to handle it.
+ A new module to parse TOML.
+ Atomic grouping and possessive quantifiers for regexes.
+ Significant performance improvements.
+ New Self type.
+ Variadic generics.
+ Data class transforms.
هر کدوم از موارد بالا به تنهایی جذاب و جالب هستن و نیاز به یه آموزش جداگانه دارن!
🔎 @py4ds
YouTube
Python 3.11 Release
Timestamps
00:00 - Introduction
24:30 - Brandt Bucher, Specializing Adaptive Interpreter
50:40 - Mark Shannon, Other Speedups
1:07:42 - Irit Katriel, Exception Improvements and Features
1:42:13 - Pablo Galindo, Better Tracebacks
1:58:46 - Pablo Galindo, tomllib…
00:00 - Introduction
24:30 - Brandt Bucher, Specializing Adaptive Interpreter
50:40 - Mark Shannon, Other Speedups
1:07:42 - Irit Katriel, Exception Improvements and Features
1:42:13 - Pablo Galindo, Better Tracebacks
1:58:46 - Pablo Galindo, tomllib…
🔥1
بالاخره نسخه پایدار پایتون 3.11 منتشر شد.
به زودی مجموعه پستهای کوتاهی در مورد برخی ویژگیهای جدیدش براتون ارسال میکنم.
🔎 @py4ds
به زودی مجموعه پستهای کوتاهی در مورد برخی ویژگیهای جدیدش براتون ارسال میکنم.
🔎 @py4ds
🔥1
🔺 اولین گام از مقایسه امکانات جدید پایتون 3.11 مقایسه در عملکرد اون هست.
🔹این نسخه از پایتون با استفاده از پروژهی Faster CPython سرعت خیلی بهتری نسبت به نسخه قبل پیدا کرده(البته در مجموع بنیاد پایتون از نسخه 3.8 به بعد تمرکز اصلی خودش رو روی بهبود عملکرد گذاشته)
👨💻تصویر بالا نمونهای از مقایسه عملکرد پایتون 3.11 با 3.10 هست که با استفاده از این پروژه انجامش دادم.
توی پروژه فوق میتونید با در نظر گرفتن یه سری نکته هر نسخهای رو با نسخه دیگه مقایسه کنید!
📊نتیجهی این مقایسه بهبود حدود بیست درصدی رو نشون میده که با توجه به اجرا شدن در محیط داکر به نظر میرسه همون عدد رسمی ذکر شده(۲۵ درصد) درست هست و همونطور که در تصویر میبینید بعضی ماژولها بیش از ۵۰ درصد بهبود عملکرد دارن!
#py311
🔎 @py4ds
🔹این نسخه از پایتون با استفاده از پروژهی Faster CPython سرعت خیلی بهتری نسبت به نسخه قبل پیدا کرده(البته در مجموع بنیاد پایتون از نسخه 3.8 به بعد تمرکز اصلی خودش رو روی بهبود عملکرد گذاشته)
👨💻تصویر بالا نمونهای از مقایسه عملکرد پایتون 3.11 با 3.10 هست که با استفاده از این پروژه انجامش دادم.
توی پروژه فوق میتونید با در نظر گرفتن یه سری نکته هر نسخهای رو با نسخه دیگه مقایسه کنید!
📊نتیجهی این مقایسه بهبود حدود بیست درصدی رو نشون میده که با توجه به اجرا شدن در محیط داکر به نظر میرسه همون عدد رسمی ذکر شده(۲۵ درصد) درست هست و همونطور که در تصویر میبینید بعضی ماژولها بیش از ۵۰ درصد بهبود عملکرد دارن!
#py311
🔎 @py4ds
👍4
🔺 بهبود پیغامهای خطا یکی از بهترین تغییرات در پایتون 3.11 هست.
💡همون طور که میبینید دقیقا به محلی از کد که در اون خطا رخ داده اشاره میکنه!
🔹نوشتن کدهای پایتونی با استفاده از عبارات(که ممکنه گاهی هم طولانی بشه) باعث شده بود که پیدا کردن محل دقیق خطا در یک عبارت قدری مشکل باشه که این مشکل با این تغییر حل شد!
سورس کد
#py311
🔎 @py4ds
💡همون طور که میبینید دقیقا به محلی از کد که در اون خطا رخ داده اشاره میکنه!
🔹نوشتن کدهای پایتونی با استفاده از عبارات(که ممکنه گاهی هم طولانی بشه) باعث شده بود که پیدا کردن محل دقیق خطا در یک عبارت قدری مشکل باشه که این مشکل با این تغییر حل شد!
سورس کد
#py311
🔎 @py4ds
👏1
🔺 ویژگی مهم بعدی برای کسانی که برنامه نویسی async انجام میدن خیلی به درد بخور هست.
👉 Exception Group
💡اگر کدی داشته باشید که به صورت async اجرا میشه و باید خطاهای به وجود اومده توی همه یا برخی از تردها رو مدیریت کنید این ویژگی خیلی بهتون کمک میکنه!
📌با این ویژگی میشه به صورت یکجا تمام خطاهای به وجود اومده از طریق مثلا asyncio.gather رو برگردوند!
📃 در این کد (با کامنت تابع خط ۳۹ و آنکامنت تابع خط ۳۵) چند تابع مختلف به صورت async (و مستقل از هم) اجرا شده و اونها هم خطا دادن؛ خطاهای Exception Group توی تصویر بالا نشون داده شده!
❓سوال: چطوری Exception Group رو هندل کنیم؟ آیا الگوی try-except جواب میده؟
❗️جواب: خیر! برای مدیریت Exception Group ها باید تمام except ها رو به صورت *except بنویسید!
🔹سورس این کد نمونهای از مدیریت خطای Exception Group هست!
#py311
🔎 @py4ds
👉 Exception Group
💡اگر کدی داشته باشید که به صورت async اجرا میشه و باید خطاهای به وجود اومده توی همه یا برخی از تردها رو مدیریت کنید این ویژگی خیلی بهتون کمک میکنه!
📌با این ویژگی میشه به صورت یکجا تمام خطاهای به وجود اومده از طریق مثلا asyncio.gather رو برگردوند!
📃 در این کد (با کامنت تابع خط ۳۹ و آنکامنت تابع خط ۳۵) چند تابع مختلف به صورت async (و مستقل از هم) اجرا شده و اونها هم خطا دادن؛ خطاهای Exception Group توی تصویر بالا نشون داده شده!
❓سوال: چطوری Exception Group رو هندل کنیم؟ آیا الگوی try-except جواب میده؟
❗️جواب: خیر! برای مدیریت Exception Group ها باید تمام except ها رو به صورت *except بنویسید!
🔹سورس این کد نمونهای از مدیریت خطای Exception Group هست!
#py311
🔎 @py4ds
👏1
🔺ویژگی add_note to Exceptions
تا حالا شده بخواید توی حالتی که خطا رو مدیریت میکنید متن کمکی اضافه کنید؟
❗️برای اینکار باید کمی کثیف کاری کنید و خطایی با پیغام مناسب برای خودتون بسازید اما حالا با ویژگی جدید پایتون 3.11 میتونید به هر خطایی که تولید میشه بدون هیچ کد اضافهای و فقط با یک متد یه متن مناسب اضافه کنید!
سورس کد
این خصوصیت میتونه توی کار با کتابخانههایی مثل hypothesis که برای تست نویسی خصوصیتی کاربرد دارن مفید باشه!
#py311
🔎 @py4ds
تا حالا شده بخواید توی حالتی که خطا رو مدیریت میکنید متن کمکی اضافه کنید؟
❗️برای اینکار باید کمی کثیف کاری کنید و خطایی با پیغام مناسب برای خودتون بسازید اما حالا با ویژگی جدید پایتون 3.11 میتونید به هر خطایی که تولید میشه بدون هیچ کد اضافهای و فقط با یک متد یه متن مناسب اضافه کنید!
سورس کد
این خصوصیت میتونه توی کار با کتابخانههایی مثل hypothesis که برای تست نویسی خصوصیتی کاربرد دارن مفید باشه!
#py311
🔎 @py4ds
👏1
Python for Data Science
🔺 ویژگی مهم بعدی برای کسانی که برنامه نویسی async انجام میدن خیلی به درد بخور هست. 👉 Exception Group 💡اگر کدی داشته باشید که به صورت async اجرا میشه و باید خطاهای به وجود اومده توی همه یا برخی از تردها رو مدیریت کنید این ویژگی خیلی بهتون کمک میکنه! 📌با این…
🔺مفهوم packing, unpacking توی پایتون از مدتها قبل با استفاده از
🔹ابتکار جالب این بنیاد در بکارگیری این علامت برای Exception Group ها به نظرم خیلی هوشمندانه هست!
👨🏻🏫به نظرم در آموزش پایتون یکی از مهمترین چیزهایی که باید به خوبی رووش تاکید بشه همین علامت و کاربردهای مختلف اون هست!
🔎 @py4ds
*
شناخته شده بود!🔹ابتکار جالب این بنیاد در بکارگیری این علامت برای Exception Group ها به نظرم خیلی هوشمندانه هست!
👨🏻🏫به نظرم در آموزش پایتون یکی از مهمترین چیزهایی که باید به خوبی رووش تاکید بشه همین علامت و کاربردهای مختلف اون هست!
🔎 @py4ds
👏1