🐍 Python & Raspberry 🐍
✔️ آقای Yury Selivanov ایشون یکی دیگه از core developerهای پرکار پایتون هستن، که عمده فعالیتشون برای این PEPها بوده: PEP 492 - async and await syntax - async with - async for - coroutine object PEP 525 - async generators - async iteration…
✔️ از پایتون ۳.۱۱ قراره ویژگیهای خفن و زیبای زیادی ببینیم، مثل:
1. Enhanced error messages
2. Optimizations
3. Static typing (more annotations)
و ۴. مفهوم multi error و به تبع اون TaskGroupها در فریمورک عه asyncio.
در این مقاله میخوایم از زبان آقای Yury Selivanov راجع به مورد هیجانانگیز و قشنگ چهارم با هم صحبت کنیم.
https://virgool.io/@liewpl/asyncio-and-taskgroups-t598c8poken9
#liewpl
1. Enhanced error messages
2. Optimizations
3. Static typing (more annotations)
و ۴. مفهوم multi error و به تبع اون TaskGroupها در فریمورک عه asyncio.
در این مقاله میخوایم از زبان آقای Yury Selivanov راجع به مورد هیجانانگیز و قشنگ چهارم با هم صحبت کنیم.
https://virgool.io/@liewpl/asyncio-and-taskgroups-t598c8poken9
#liewpl
ویرگول
فریمورک asyncio و TaskGroupها در پایتون
ببینیم پایتون ۳۱۱ چه چیز جدیدی برای asyncio داره
🔥5👍4
دنبال دلیل برای آپدیت کردن پایتونتون به نسخه 3.10 میگردید؟ نظرتون راجع به پيشنهادات املایی هنگام اشتباه نوشتن اسامی چیه؟ 😁😁
#liewpl
#liewpl
👍12🔥3
✔️ از source تا code
"کد پایتون هنگام اجرا به کد سی تبدیل میشه!" 😐
"پایتون خط به خط کد رو ترجمه و اجرا میکنه و کامپایلر نداره" 😑
"پایتون کامپایلر نداره هر کی این رو بهت گفته بیسواده" 😶
اینارو شنیدید؟!
یکی نیست بگه بالاخره کد ما کامپایل میشه یا نمیشه، اگه میشه چجوری؟ کی اصلا میاد کد رو میخونه و کجا اجرا میشه؟ بالاخره کیا این وسط درست میگن پایتون کامپایل میشه یا نه؟
همراه بشید با سفر یکی از core developer های پایتون، Brett Cannon، از نوشتن کد تا اجرا اون و از گذر کردن از گردنههای
decoding -> tokenizing -> parsing -> AST -> compiling
لذت ببرید
🎥 From Source To Code: How CPython's Compiler Works - Brett Cannon
#liewpl
@raspberry_python
"کد پایتون هنگام اجرا به کد سی تبدیل میشه!" 😐
"پایتون خط به خط کد رو ترجمه و اجرا میکنه و کامپایلر نداره" 😑
"پایتون کامپایلر نداره هر کی این رو بهت گفته بیسواده" 😶
اینارو شنیدید؟!
یکی نیست بگه بالاخره کد ما کامپایل میشه یا نمیشه، اگه میشه چجوری؟ کی اصلا میاد کد رو میخونه و کجا اجرا میشه؟ بالاخره کیا این وسط درست میگن پایتون کامپایل میشه یا نه؟
همراه بشید با سفر یکی از core developer های پایتون، Brett Cannon، از نوشتن کد تا اجرا اون و از گذر کردن از گردنههای
decoding -> tokenizing -> parsing -> AST -> compiling
لذت ببرید
🎥 From Source To Code: How CPython's Compiler Works - Brett Cannon
#liewpl
@raspberry_python
👍7
✔️ مقایسه زمانی "مجموع اعداد یک دنباله"
اینجا جمع اعداد حسابی صفر تا یک میلیارد رو:
محاسبه کردیم.
بیش از 5,880,000 بار سریعتر :)
❓ آیا پایتون کند است؟ خیر، وقتی که از ابزار درستی استفاده کنید.
#liewpl
〰️〰️〰️〰️〰️
© @raspberry_python
اینجا جمع اعداد حسابی صفر تا یک میلیارد رو:
-
با استفاده از حلقه for در پایتون -
با استفاده از تابع built-in عه "sum" -
با استفاده از مورد اول + numbaمحاسبه کردیم.
بیش از 5,880,000 بار سریعتر :)
❓ آیا پایتون کند است؟ خیر، وقتی که از ابزار درستی استفاده کنید.
#liewpl
〰️〰️〰️〰️〰️
© @raspberry_python
👍9
🐍 Python & Raspberry 🐍
✔️ مقایسه زمانی "مجموع اعداد یک دنباله" اینجا جمع اعداد حسابی صفر تا یک میلیارد رو: - با استفاده از حلقه for در پایتون - با استفاده از تابع built-in عه "sum" - با استفاده از مورد اول + numba محاسبه کردیم. بیش از 5,880,000 بار سریعتر :) ❓ آیا پایتون کند…
✔️ بنچمارک کوچک قبلی رو دیدیم، اما واقعا به چه دلیل «پایتون اینقدر کند» و باز هم «پایتون اینقدر تند» محاسبه رو انجام داده؟
- بیاید تا تفاوت روشهارو مقایسه کنیم و بفهمیم چرا پایتون هم کند و هم تند عمل کرده.
- اندکی راجع به JIT Compilerها مطالعه کنیم.
- یک معرفی مفصل هم راجع به Numba داشته باشیم.
https://virgool.io/@liewpl/python-is-very-fast-gmmdjs3zyhob
#liewpl
〰️〰️〰️〰️〰️
©@raspberry_python
- بیاید تا تفاوت روشهارو مقایسه کنیم و بفهمیم چرا پایتون هم کند و هم تند عمل کرده.
- اندکی راجع به JIT Compilerها مطالعه کنیم.
- یک معرفی مفصل هم راجع به Numba داشته باشیم.
https://virgool.io/@liewpl/python-is-very-fast-gmmdjs3zyhob
#liewpl
〰️〰️〰️〰️〰️
©@raspberry_python
ویرگول
پایتون «بسیار» سریع است! - ویرگول
یکی نیست تکلیف ما رو روشن کنه بالاخره پایتون کنده یا تند؟ بیاید تا یکم صحبت کنیم!
👍13
✔️ AST and Me
زیر و بم Abstract Systex Tree عه محبوب پایتون رو یاد بگیرید.
آیا تا حالا فکر کردید که یک کد پایتون چگونه اجرا میشه؟ بحثهایی رو دیدید که یک سریها میگن پایتون کامپایلری عه یا یه سری دیگه میگن مفسری عه؟ در این کنفرانس ما به چرخه حیات یک قطعه کد پایتون میپردازیم تا نقشی که AST در شکل دادن به runtime عه کد شما داره رو درک کنیم.
با استفاده از دانش جدید خود در مورد AST پایتون، خواهید دید که چگونه قبلاً به AST ها اعتماد کردهاید و چگونه می توان از آنها برای ساخت ابزارهای عالی استفاده کرد :)
📺 https://www.youtube.com/watch?v=XhWvz4dK4ng
(ابتدا توضيحات رو بخونید)
PyCons: Explanation • 1 • 2 • 3
#liewpl
〰〰〰〰〰
©@raspberry_python
زیر و بم Abstract Systex Tree عه محبوب پایتون رو یاد بگیرید.
آیا تا حالا فکر کردید که یک کد پایتون چگونه اجرا میشه؟ بحثهایی رو دیدید که یک سریها میگن پایتون کامپایلری عه یا یه سری دیگه میگن مفسری عه؟ در این کنفرانس ما به چرخه حیات یک قطعه کد پایتون میپردازیم تا نقشی که AST در شکل دادن به runtime عه کد شما داره رو درک کنیم.
با استفاده از دانش جدید خود در مورد AST پایتون، خواهید دید که چگونه قبلاً به AST ها اعتماد کردهاید و چگونه می توان از آنها برای ساخت ابزارهای عالی استفاده کرد :)
📺 https://www.youtube.com/watch?v=XhWvz4dK4ng
(ابتدا توضيحات رو بخونید)
PyCons: Explanation • 1 • 2 • 3
#liewpl
〰〰〰〰〰
©@raspberry_python
YouTube
Emily Morehouse-Valcarcel - The AST and Me - PyCon 2018
Speaker: Emily Morehouse-Valcarcel
Get under the hood and learn about Python's beloved Abstract Syntax Tree. Ever wonder how Python code is run? Overheard people arguing about whether Python is interpreted or compiled? In this talk, we will delve into the…
Get under the hood and learn about Python's beloved Abstract Syntax Tree. Ever wonder how Python code is run? Overheard people arguing about whether Python is interpreted or compiled? In this talk, we will delve into the…
👍3
✔️ A bit About Bytes
اگر تا الان حتی یک بار کد پایتون نوشتید یا از پایتون استفاده کردید، احتمالاً به دیدن فایل های کد منبع پایتون عادت کرده اید، و همینطور که میدونید پسوند این فایلها
اما فراتر از جمله «اوه، این بایت کد پایتون است»، آیا واقعاً میدونید که توی اون فایل چی هست و پایتون چجوری ازشون استفاده میکنه؟
اگر نه، امروز روز شانس شماست و من بهتون کمک میکنم که بفهمید این بایتکد چیه و بهتون نشون میدم که چطور داشتن شناخت از بایتکدها به شما کمک میکنه :)
📀 https://www.youtube.com/watch?v=cSSpnq362Bk
(ابتدا توضيحات رو بخونید)
PyCons: Explanation • 1 • 2 • 3
#liewpl
〰〰〰〰〰
©@raspberry_python
اگر تا الان حتی یک بار کد پایتون نوشتید یا از پایتون استفاده کردید، احتمالاً به دیدن فایل های کد منبع پایتون عادت کرده اید، و همینطور که میدونید پسوند این فایلها
py.
هست. اما ممکنه کنار این فایلها ( یا در پوشه pycache) فایله
ایی با پسوند pyc. دیده با
شید و ممکنه که شنیده باشید که آنها فایلهای "بایت کد" پایتون هستند. و شاید شنیده باشید که این ذخیرهسازی نوعی صرفهجویی تو زمانه که باعث میشه پایتون مجبور نباشه هر بار که کد شما را اجرا میکنه، دوباره اون رو کامپایل کنه.اما فراتر از جمله «اوه، این بایت کد پایتون است»، آیا واقعاً میدونید که توی اون فایل چی هست و پایتون چجوری ازشون استفاده میکنه؟
اگر نه، امروز روز شانس شماست و من بهتون کمک میکنم که بفهمید این بایتکد چیه و بهتون نشون میدم که چطور داشتن شناخت از بایتکدها به شما کمک میکنه :)
📀 https://www.youtube.com/watch?v=cSSpnq362Bk
(ابتدا توضيحات رو بخونید)
PyCons: Explanation • 1 • 2 • 3
#liewpl
〰〰〰〰〰
©@raspberry_python
YouTube
James Bennett - A Bit about Bytes: Understanding Python Bytecode - PyCon 2018
Speaker: James Bennett
At some point every Python programmer sees Python bytecode files -- they're those '.pyc' files Python likes to leave behind after it runs. But have you ever wondered what's really going on in those files? Well, wonder no more! In this…
At some point every Python programmer sees Python bytecode files -- they're those '.pyc' files Python likes to leave behind after it runs. But have you ever wondered what's really going on in those files? Well, wonder no more! In this…
👍4
✔️ Bytes in the Machine
آیا تا به حال فکر کرده اید که مفسر CPython چگونه کار می کند؟ می دونید در CPython دستور سوئیچ ۳۷۲۳ خطی را کجا پیدا کنید؟
من در مورد ساختار مفسری صحبت خواهم کرد که همه ما هر روز از آن استفاده می کنیم، و توضیح می دهم که چگونه من و ند بچلدر یک باگ مرموز را در Byterun، یک مفسر پایتون که در پایتون نوشته شده بود، تعقیب کردیم. ما همچنین تصاویری از VM را هنگام اجرای کد شما مشاهده خواهیم کرد.
💾 https://www.youtube.com/watch?v=HVUTjQzESeo
(ابتدا توضيحات رو بخونید)
PyCons: Explanation • 1 • 2 • 3
#liewpl
〰〰〰〰〰
©@raspberry_python
آیا تا به حال فکر کرده اید که مفسر CPython چگونه کار می کند؟ می دونید در CPython دستور سوئیچ ۳۷۲۳ خطی را کجا پیدا کنید؟
من در مورد ساختار مفسری صحبت خواهم کرد که همه ما هر روز از آن استفاده می کنیم، و توضیح می دهم که چگونه من و ند بچلدر یک باگ مرموز را در Byterun، یک مفسر پایتون که در پایتون نوشته شده بود، تعقیب کردیم. ما همچنین تصاویری از VM را هنگام اجرای کد شما مشاهده خواهیم کرد.
💾 https://www.youtube.com/watch?v=HVUTjQzESeo
(ابتدا توضيحات رو بخونید)
PyCons: Explanation • 1 • 2 • 3
#liewpl
〰〰〰〰〰
©@raspberry_python
YouTube
Allison Kaptur - Bytes in the Machine: Inside the CPython interpreter - PyCon 2015
"Speaker: Allison Kaptur
Have you ever wondered how the CPython interpreter works? Do you know where to find a 1,500 line switch statement in CPython? I'll talk about the structure of the interpreter that we all use every day by explaining how Ned Batchelder…
Have you ever wondered how the CPython interpreter works? Do you know where to find a 1,500 line switch statement in CPython? I'll talk about the structure of the interpreter that we all use every day by explaining how Ned Batchelder…
👍3👎1
✔️ تاکنون در گروههای مختلف سوالات و بحثهای زیادی پیرامون اینکه پایتون چگونه کد ما را اجرا میکنه و این سوال که آیا پایتون یک زبان مفسری هست یا کامپایلری درست پاسخ داده نشده.
برای فهمیدن پاسخ این سوال از چند جهت نیاز به دانستن چیزهای مختلف حس میشه که حداقل این نیاز ها در این سه پایکان توضیح داده شده.
پس اگر میخواهید یک بار برای همیشه متوجه بشید بالاخره پایتون مفسری عه یا کامپایلری و کد ما چگونه اجرا میشه این ۳ پایکان رو از دست ندید
PyCons: Explanation • 1 • 2 • 3
#liewpl
〰〰〰〰〰
©@raspberry_python
برای فهمیدن پاسخ این سوال از چند جهت نیاز به دانستن چیزهای مختلف حس میشه که حداقل این نیاز ها در این سه پایکان توضیح داده شده.
پس اگر میخواهید یک بار برای همیشه متوجه بشید بالاخره پایتون مفسری عه یا کامپایلری و کد ما چگونه اجرا میشه این ۳ پایکان رو از دست ندید
PyCons: Explanation • 1 • 2 • 3
#liewpl
〰〰〰〰〰
©@raspberry_python
👍5👎1
✔️ توسعهدهندگان حرفهای نرمافزار چه اولویتبندی دارند؟
(اولویت از زیاد به کم)
اما بالاخره افراد و پستهایی در تلگرام و اینستاگرام هستن که یکی را آنچنان برایمان بزرگ میکنند که انگار بعضیوقتها باقی وجود خارجی ندارند :))
#liewpl
〰️〰️〰️〰️〰️
©@raspberry_python
(اولویت از زیاد به کم)
-----
آیا کد کار میکنه؟----
آیا تستهای automate شده دارید؟---
آیا برای کد user doc نوشته شده؟--
آیا راحت نصب میشه؟-
آیا به اندازه کافی سریع هست؟اما بالاخره افراد و پستهایی در تلگرام و اینستاگرام هستن که یکی را آنچنان برایمان بزرگ میکنند که انگار بعضیوقتها باقی وجود خارجی ندارند :))
#liewpl
〰️〰️〰️〰️〰️
©@raspberry_python
👍4