You Dont Know
50 Cent, Eminem, Cashis & LLoyd Banks
'^(\w|\.|\_|\-)+[@](\w|\_|\-|\.)+[.]\w{2,3}$'
© https://redd.it/q0c9o3
#fun_but_hagh
〰️〰️〰️〰️〰️〰️
©@DjangoEx
© https://redd.it/q0c9o3
#fun_but_hagh
〰️〰️〰️〰️〰️〰️
©@DjangoEx
Python 3.10 Release Stream — with Pablo Galindo
شروع تا ۲۰ دقیقه دیگه
👉 Link: https://www.youtube.com/watch?v=AHT2l3hcIJg
〰️〰️〰️〰️〰️〰️
©@DjangoEx
شروع تا ۲۰ دقیقه دیگه
👉 Link: https://www.youtube.com/watch?v=AHT2l3hcIJg
〰️〰️〰️〰️〰️〰️
©@DjangoEx
YouTube
Python 3.10 Release Stream — with Pablo Galindo
Python 3.10 is set to be released on 4 October 2021. Join us live in our Python 3.10 Release Stream with Pablo Galindo, CPython Core Developer and Python 3.10 Release Manager, and Leon Sandøy.
Links:
- https://docs.python.org/3.10/whatsnew/3.10.html
- …
Links:
- https://docs.python.org/3.10/whatsnew/3.10.html
- …
Django Expert
Python 3.10 Release Stream — with Pablo Galindo شروع تا ۲۰ دقیقه دیگه 👉 Link: https://www.youtube.com/watch?v=AHT2l3hcIJg 〰️〰️〰️〰️〰️〰️ ©@DjangoEx
انیستاگرام و واتس اپ که از دسترس خارج شدن یوتیوب دان نشه صلوات :)))
🎵 The PEP 8 Song 🎵
عالیه حتما ببینید،
ترانه PEP 8 پایتون، کاری از Leon Sandøy
👉 Link: https://youtu.be/hgI0p1zf31k
〰️〰️〰️〰️〰️〰️
©@DjangoEx
عالیه حتما ببینید،
ترانه PEP 8 پایتون، کاری از Leon Sandøy
👉 Link: https://youtu.be/hgI0p1zf31k
〰️〰️〰️〰️〰️〰️
©@DjangoEx
YouTube
🎵 The PEP 8 Song 🎵
A songification of that most holiest of Python Enhancement Proposals, the PEP 8.
Based on an idea by Daniel "Mr. Hemlock" Brown.
Written and performed by Leon Sandøy, A.K.A. lemonsaurus.
Music and melody from Mad World by Roland Orzabal. This version was…
Based on an idea by Daniel "Mr. Hemlock" Brown.
Written and performed by Leon Sandøy, A.K.A. lemonsaurus.
Music and melody from Mad World by Roland Orzabal. This version was…
Django Expert
Python v3.10 is here! https://github.com/python/cpython/releases/tag/v3.10.0 〰️〰️〰️〰️〰️〰️ ©@DjangoEx
https://docs.python.org/3.10/whatsnew/3.10.html
https://realpython.com/python310-new-features/
واقعاً هنوز این رو نخوندید؟
روز تعطیله، بسم الله شروع کنید و دانشتون رو بروز کنید
〰️〰️〰️〰️〰️〰️
©@DjangoEx
https://docs.python.org/3.10/whatsnew/3.10.html
https://realpython.com/python310-new-features/
واقعاً هنوز این رو نخوندید؟
روز تعطیله، بسم الله شروع کنید و دانشتون رو بروز کنید
〰️〰️〰️〰️〰️〰️
©@DjangoEx
Realpython
Python 3.10: Cool New Features for You to Try – Real Python
In this tutorial, you'll explore some of the coolest and most useful features in Python 3.10. You'll appreciate more user-friendly error messages, learn about how you can handle complicated data structures with structural pattern matching, and explore new…
✔️ آشنایی با structural pattern matching در پایتون
توی این ویدیو به مناسبت ریلیز شدن نسخه ۳.۱۰ پایتون تصمیم گرفتم ساختار مهمی که توی این نسخه هست رو براتون باز کنم و برای کسایی که این ساختار رو نمیشناسن بگم که این ساختار چیه و چه کمکی میتونه به ما بکنه
((دوستان انتقادات و پیشنهاداتون باعث میشه تا نقاط ضعف کار مشخص بشه و برای اصلاحش گام برداریم.پس حتما نظراتتون رو زیر ویدیو کامنت کنین🙏 ))
👉 Link: https://youtu.be/d8-ocyf6l9M
Thanks to: @shahriaarrr12
#python #پایتون
〰️〰️〰️〰️〰️〰️
©@DjangoEx
توی این ویدیو به مناسبت ریلیز شدن نسخه ۳.۱۰ پایتون تصمیم گرفتم ساختار مهمی که توی این نسخه هست رو براتون باز کنم و برای کسایی که این ساختار رو نمیشناسن بگم که این ساختار چیه و چه کمکی میتونه به ما بکنه
((دوستان انتقادات و پیشنهاداتون باعث میشه تا نقاط ضعف کار مشخص بشه و برای اصلاحش گام برداریم.پس حتما نظراتتون رو زیر ویدیو کامنت کنین🙏 ))
👉 Link: https://youtu.be/d8-ocyf6l9M
Thanks to: @shahriaarrr12
#python #پایتون
〰️〰️〰️〰️〰️〰️
©@DjangoEx
✔️ مرگ تخصص
جهل و نادانی چطور فضیلت شد؟
با از بین رفتن احترام به حقیقت، تجزیه و تحلیل منطقی و تفکر انتقادی شرایط خطرناکی در پیش داریم. در این شرایط نظرات ناآگاه هم وزن نظرات متخصصان میشود و تقلب، نظریههای توطئه، اخبار جعلی، تبلیغات و انواع مزخرفات رونق میگیرند.
معمولا بین متخصصها و غیر متخصصها در جامعه شکاف و فاصلهای هست. تام نیکولز نویسنده کتاب مرگ تخصص ابتدا به دلایل این شکاف اشاره میکند. چیزهایی مثل اثر دانینگ-کروگر، خطاهای شناختی و انواع الگوهای فکری نادرست مثل خرافات و تئوری توطئه. بعد سراغ این موضوع میرود که این شکاف به مرز خطرناکی رسیده؛ یعنی وضعیتی که فرد عامی مفتخر است از اینکه متخصص نیست. پرسش درباره اینکه چرا اینطور شده؟ چه چیزی در این دوران تازه تغییر کرده که باعث این وضع شده؟
🎧 در پادکست بیپلاس گوش دهید - خلاصه کتاب مرگ تخصص
👉 Link: https://bpls.me/9u3dxl
〰️〰️〰️〰️〰️〰️
©@DjangoEx
جهل و نادانی چطور فضیلت شد؟
با از بین رفتن احترام به حقیقت، تجزیه و تحلیل منطقی و تفکر انتقادی شرایط خطرناکی در پیش داریم. در این شرایط نظرات ناآگاه هم وزن نظرات متخصصان میشود و تقلب، نظریههای توطئه، اخبار جعلی، تبلیغات و انواع مزخرفات رونق میگیرند.
معمولا بین متخصصها و غیر متخصصها در جامعه شکاف و فاصلهای هست. تام نیکولز نویسنده کتاب مرگ تخصص ابتدا به دلایل این شکاف اشاره میکند. چیزهایی مثل اثر دانینگ-کروگر، خطاهای شناختی و انواع الگوهای فکری نادرست مثل خرافات و تئوری توطئه. بعد سراغ این موضوع میرود که این شکاف به مرز خطرناکی رسیده؛ یعنی وضعیتی که فرد عامی مفتخر است از اینکه متخصص نیست. پرسش درباره اینکه چرا اینطور شده؟ چه چیزی در این دوران تازه تغییر کرده که باعث این وضع شده؟
🎧 در پادکست بیپلاس گوش دهید - خلاصه کتاب مرگ تخصص
👉 Link: https://bpls.me/9u3dxl
〰️〰️〰️〰️〰️〰️
©@DjangoEx
Forwarded from DevOps Expert (Mohammad Babazadeh)
آموزش کامل داکر 🔥
✔️ ۰۰ - آموزش داکر - داکر چیست و به چه دردی میخوره؟
👉🏻 https://youtu.be/j4mYb5ZuH3Q
✔️ ۰۱ - تفاوت داکر با ماشین مجازی - داکر چطوری کار می کنه؟
👉🏻 https://youtu.be/M-tTkh6fS8g
✔️ ۰۲ - نصب و کانفیگ داکر بر روی لینوکس
👉🏻 https://youtu.be/nVZg08dcx90
✔️ ۰۳ - نصب و کانفیگ داکر بر روی ویندوز
👉🏻 https://youtu.be/ziMMC8Rc12M
#داکر #سیلیسیم
〰️〰️〰️〰️〰️〰️
© @DevOpsEx
✔️ ۰۰ - آموزش داکر - داکر چیست و به چه دردی میخوره؟
👉🏻 https://youtu.be/j4mYb5ZuH3Q
✔️ ۰۱ - تفاوت داکر با ماشین مجازی - داکر چطوری کار می کنه؟
👉🏻 https://youtu.be/M-tTkh6fS8g
✔️ ۰۲ - نصب و کانفیگ داکر بر روی لینوکس
👉🏻 https://youtu.be/nVZg08dcx90
✔️ ۰۳ - نصب و کانفیگ داکر بر روی ویندوز
👉🏻 https://youtu.be/ziMMC8Rc12M
#داکر #سیلیسیم
〰️〰️〰️〰️〰️〰️
© @DevOpsEx
✔️ همهچیز دربارهی الگوهاست!
در پیرو نسخه ۳.۱۰ زبان برنامهنویسی پایتون که در ۴ اکتبر ۲۰۲۱ منتشر شد. یکی از امکانات جدید آن که پیشتر هم راجعبه آن صحبتهای زیادی شده بود مورد توجه برنامهنویسان پایتون قرار گرفت. این امکان Structural Pattern Matching نام دارد.
در نگاه اول به نمونه کدهای مرتبط با این قابلیت، ممکن است شبیه به switch case در زبانهایی مثل C/CPP، Java، Javascript و... بنظر برسد. اما واقعیت چیز دیگریست.
اول از همه باید توجه داشت که این قابلیت ابداع شده توسط پایتون نیست و زبانهای دیگری مثل Haskell، Erlang، Ruby و... نیز از چنین ساختاری برخوردار هستند. توجه شما را به این نقل قول از Brandt Bucher نویسنده این قابلیت جدید از پایتون جلب میکنم:
"We didn't invent most of this, we stole a lot of it :)"
تفاوت Structural Pattern Matching و Switch Case
برنت بوکر (Brandt Bucher) نویسنده این قابلیت توضیح میدهد: درواقع چیزهای زیادی وجود دارد که switch case انجام میدهد و pattern matching نمیتواند و همچنین قابلیتهای زیادی در pattern matching وجود دارد که switch case از آنها برخوردار نیست. اگر شما تلاش کنید که این دو ساختار را شبیه هم در نظر بگیرید، شانس استفاده از قدرت هردو را از دست میدهید.
اما این چه ساختاری است؟
درواقع Structural Pattern Matching ترکیبی از دو ایدهی کنترل روند (control flow) و گسستن ساختار (destructure) است. در این ساختار با دریافت یک مقدار (subject value) و تعریف کردن چند الگوی تطبیق (pattern) برای آن، فرایند را منتهی به تطابق یا عدم تطابق میکنیم.
در تعریف ساده: در این روند مقدار ورودی به اجزای سازنده آن تجزیه شده و در جریان تطابق با الگوی تعیین شده قرار میگیرد.
فرض کنید متغیر name را به عنوان ورودی میگیریم و انتظار داریم که از نوع لیست، به اندازه ۲، در اندیس صفر مقدار Shahriar و در اندیس یکم مقدار Shariati را داشته باشد. در پایتون ۳.۹ به قبل، میتوانیم چنین کدی را داشته باشیم:
به همین ترتیب مثلا برای مقایسه مقادیر داخل یک data class به نام Point نیز میتوانیم چنین الگویی تعریف کنیم:
احتمالا تا الآن متوجه شده باشید که این قابلیت چیزی بیشتر و متفاوتتر از مقایسه معمولی است و همانطور که پیداست، اینجا الگوها حائز اهمیت هستند!
این قابلیت در سه pep به شمارههای ۶۳۴، ۶۴۵ و ۶۳۶ معرفی شده که خواندن آنها بسیار مفید است.
منابع
PEP 634 -- Structural Pattern Matching: Specification
PEP 635 -- Structural Pattern Matching: Motivation and Rationale
PEP 636 -- Structural Pattern Matching: Tutorial
Python 3.10 Release Stream - Brandt Bucher
در پیرو نسخه ۳.۱۰ زبان برنامهنویسی پایتون که در ۴ اکتبر ۲۰۲۱ منتشر شد. یکی از امکانات جدید آن که پیشتر هم راجعبه آن صحبتهای زیادی شده بود مورد توجه برنامهنویسان پایتون قرار گرفت. این امکان Structural Pattern Matching نام دارد.
در نگاه اول به نمونه کدهای مرتبط با این قابلیت، ممکن است شبیه به switch case در زبانهایی مثل C/CPP، Java، Javascript و... بنظر برسد. اما واقعیت چیز دیگریست.
اول از همه باید توجه داشت که این قابلیت ابداع شده توسط پایتون نیست و زبانهای دیگری مثل Haskell، Erlang، Ruby و... نیز از چنین ساختاری برخوردار هستند. توجه شما را به این نقل قول از Brandt Bucher نویسنده این قابلیت جدید از پایتون جلب میکنم:
"We didn't invent most of this, we stole a lot of it :)"
تفاوت Structural Pattern Matching و Switch Case
برنت بوکر (Brandt Bucher) نویسنده این قابلیت توضیح میدهد: درواقع چیزهای زیادی وجود دارد که switch case انجام میدهد و pattern matching نمیتواند و همچنین قابلیتهای زیادی در pattern matching وجود دارد که switch case از آنها برخوردار نیست. اگر شما تلاش کنید که این دو ساختار را شبیه هم در نظر بگیرید، شانس استفاده از قدرت هردو را از دست میدهید.
اما این چه ساختاری است؟
درواقع Structural Pattern Matching ترکیبی از دو ایدهی کنترل روند (control flow) و گسستن ساختار (destructure) است. در این ساختار با دریافت یک مقدار (subject value) و تعریف کردن چند الگوی تطبیق (pattern) برای آن، فرایند را منتهی به تطابق یا عدم تطابق میکنیم.
در تعریف ساده: در این روند مقدار ورودی به اجزای سازنده آن تجزیه شده و در جریان تطابق با الگوی تعیین شده قرار میگیرد.
فرض کنید متغیر name را به عنوان ورودی میگیریم و انتظار داریم که از نوع لیست، به اندازه ۲، در اندیس صفر مقدار Shahriar و در اندیس یکم مقدار Shariati را داشته باشد. در پایتون ۳.۹ به قبل، میتوانیم چنین کدی را داشته باشیم:
if (
isinstance(name, list)
and len(name) == 2
and name[0] == "Shahriar"
and name[1] == "Shariati"
):
print("Name is correct.")
else:
print("Name is incorrect.")
اما حالا با کمک پایتون ۳.۱۰ میتوانیم چنین الگویی را تعریف کنیم:match name:
case ["Shahriar", "Shariati"]:
print("Name is correct")
case _:
print("Name is incorrect")
نکته: علامت underscore در اینجا حکم الگوی خالی را دارد و در صورتی که مقدار ورودی با هیچ کدام از الگوهای تعریف شده تطابق نداشته باشد اتفاق میافتد.به همین ترتیب مثلا برای مقایسه مقادیر داخل یک data class به نام Point نیز میتوانیم چنین الگویی تعریف کنیم:
match p:
case Point(0, 0):
print("At the origin!")
case Point(0, y):
print(f"On the y-axis at {y = }!")
case Point(x, 0):
print(f"On the x-axis at {x = }!")
در قطعه کد بالا با تعریف تطابق کلاس و یک الگوی پویا میتوانیم مقادیر موجود در کلاس مانند x و y را نیز استخراج کنیم و در بدنهی شرط از آن استفاده کنیم. برای مطالعه بیشتر به pep-636 مراجعه کنید.احتمالا تا الآن متوجه شده باشید که این قابلیت چیزی بیشتر و متفاوتتر از مقایسه معمولی است و همانطور که پیداست، اینجا الگوها حائز اهمیت هستند!
این قابلیت در سه pep به شمارههای ۶۳۴، ۶۴۵ و ۶۳۶ معرفی شده که خواندن آنها بسیار مفید است.
منابع
PEP 634 -- Structural Pattern Matching: Specification
PEP 635 -- Structural Pattern Matching: Motivation and Rationale
PEP 636 -- Structural Pattern Matching: Tutorial
Python 3.10 Release Stream - Brandt Bucher
آموزش کامل داکر 🔥
✔️ ۰۴ - ثبت نام در docker hub و لاگین با docker و کاهش محدودیت دانلود ایمیج
👉🏻 https://youtu.be/MEC21hKHkUk
✔️ ۰۵ - دانلود ایمیج nginx و ران کردنش
👉🏻 https://youtu.be/iowDQry1hNk
✔️ ۰۶ - تنظیم پورت در داکر
👉🏻 https://youtu.be/j5y6xpKQCXk
#داکر
〰️〰️〰️〰️〰️〰️
© @DevOpsEx
✔️ ۰۴ - ثبت نام در docker hub و لاگین با docker و کاهش محدودیت دانلود ایمیج
👉🏻 https://youtu.be/MEC21hKHkUk
✔️ ۰۵ - دانلود ایمیج nginx و ران کردنش
👉🏻 https://youtu.be/iowDQry1hNk
✔️ ۰۶ - تنظیم پورت در داکر
👉🏻 https://youtu.be/j5y6xpKQCXk
#داکر
〰️〰️〰️〰️〰️〰️
© @DevOpsEx