Notice: file_put_contents(): Write of 3867 bytes failed with errno=28 No space left on device in /var/www/tgoop/post.php on line 50

Warning: file_put_contents(): Only 16384 of 20251 bytes written, possibly out of free disk space in /var/www/tgoop/post.php on line 50
Python Hints@pyHints P.137
PYHINTS Telegram 137
Python Hints
#Quick من این اخطار‌ هارو همیشه زودتر به دوستان نزدیکم میگم گفتم ازین به بعد بعضی‌هاش رو اینجا هم بگم: اولین : asyncio رو هرچه زودتر یاد بگیرید، پترن‌ها و مفاهیم برنامه‌نویسی Async, Parallel, Concurent قبلتر تأکید زیادی روش نداشتم، اما دیر نیست (توی…
بعد از این پست، چندتا دوره آموزش
Async programming
برام فرستادید، بعضی موارد حتی از طرف افراد معروفی هست که متأسفانه وقتی ۱-۲ مورد رو نگاه کردم متوجه شدم کلاه‌برداری‌ هست

من بهترین منبع رو توی کانال گذاشتم : کتابی که بالاتر هست.
اما برای اینکه متوجه بشید دوره درست هست یا خیر؛

به زبان ساده :

ما بطور کلی ۲ نوع مشکل می‌تونیم داشته باشیم که کدهامون سرعت اجرا کندی داشته باشند :
۱- CPU bound
۲- I/O bound

مورد اول : وقتایی هست که شما پردازش خیلی زیادی داری، کد معطل خوندن دیتا از هارد، یاد دانلود دیتا و ... نیست و فقط و فقط خود پردازش کردن داده‌ها هست که داره زمان زیادی میگیره، به فرض اینکه کد بخوبی زده شده و تا حد خوبی اپتیمایز شده برای این نوع مسائل باید برید سراغ کتابخانه:
multiprocessing

مورد دوم : غیر از بچه‌های
Data science, data engineering
اکثر مواقع شما مشکلی که دارید روی این بخش هست، همونطور که می‌دونید پردازش CPU بسیار سریعتر از بخش‌های
I/O : Input / Output

هست، یعنی شما توی کسری از ثانیه محاسبات رو روی ۱ هسته از CPU های لپ‌تاپ یا سیستمتون انجام میدید ولی خوندن دیتا از هارد، رم یا حتی وقتی دارید
Crawler
می‌نویسید دانلود اون صفحه توسط پکیج requests هست که خیلی زمانبر هست نه پیدا کردن چندتا تگ توی html اون صفحه؛ هرچیزی غیر از CPU بمحض درگیر شدن کدهارو
I/O bound
می‌کنه، ولی خب به نسبت پردازش بهش نگاه می‌کنیم اگر از پردازش وقت بیشتری بگیره کدهای شما
I/O Blocking
هستند اگر از پردازش وقت کمتری بگیره کدهای شما
CPU Blocking

برای همین خیلی وقتا
Multiprocessing, Multithreading
توی پایتون، بهبود سرعتی که نمی‌ده هیچ اجرا رو کندتر هم می‌کنه (این چیزی هست که زیاد می‌شنوم و می‌فهمم طرفم حتی مفاهیم ساده علوم کامپیوتر رو هم نمی‌دونه و خودش رو برنامه‌نویس می‌دونه)

برای تسک‌های I/O blocking باید از
asyncio
استفاده کنید، اما صرف نوشتن
async, await

هیچ اتفاقی نمیوفته (اینو میلیاردها بار توی کدهای fastApi می‌بینید) await اصلا از خود کلمه‌اش مشخص هست (من همیشه اینطوری درس میدادم)
A wait
ی ذره صبر کنیم تا جواب این خط کد بیاد بعد ادامه میدیم، و همینجوری کیلویی استفاده کردنش هیچ کمکی نمی‌کنه

از طرف دیگه کتابخونه‌ای که توی پروژه
Async
استفاده میشه هم مهم هست، مثلاً برای ارسال درخواست روی web دیگه نمی‌تونید از requests استفاده کنید باید اون کتابخونه هم async رو پشتیبانی کنه مثلاً بعنوان جایگزین

HttpX, aiohttp



با این مطلب می‌تونید خیلی وقتا متوجه بشید ی دوره آموزش
asyncio
کلاهبرداری هست یا واقعی (چون خیلی از آدمهای بسیار معروف توی دنیای پایتون رو دیدم، که asyncio رو اشتباه تدریس می‌کنند.)

ولی بازم منبع اصلی کتابی هست که آخر پیام‌های پین شده گذاشتم برای
Async
👍54👏6211👌1



tgoop.com/pyHints/137
Create:
Last Update:

بعد از این پست، چندتا دوره آموزش
Async programming
برام فرستادید، بعضی موارد حتی از طرف افراد معروفی هست که متأسفانه وقتی ۱-۲ مورد رو نگاه کردم متوجه شدم کلاه‌برداری‌ هست

من بهترین منبع رو توی کانال گذاشتم : کتابی که بالاتر هست.
اما برای اینکه متوجه بشید دوره درست هست یا خیر؛

به زبان ساده :

ما بطور کلی ۲ نوع مشکل می‌تونیم داشته باشیم که کدهامون سرعت اجرا کندی داشته باشند :
۱- CPU bound
۲- I/O bound

مورد اول : وقتایی هست که شما پردازش خیلی زیادی داری، کد معطل خوندن دیتا از هارد، یاد دانلود دیتا و ... نیست و فقط و فقط خود پردازش کردن داده‌ها هست که داره زمان زیادی میگیره، به فرض اینکه کد بخوبی زده شده و تا حد خوبی اپتیمایز شده برای این نوع مسائل باید برید سراغ کتابخانه:
multiprocessing

مورد دوم : غیر از بچه‌های
Data science, data engineering
اکثر مواقع شما مشکلی که دارید روی این بخش هست، همونطور که می‌دونید پردازش CPU بسیار سریعتر از بخش‌های
I/O : Input / Output

هست، یعنی شما توی کسری از ثانیه محاسبات رو روی ۱ هسته از CPU های لپ‌تاپ یا سیستمتون انجام میدید ولی خوندن دیتا از هارد، رم یا حتی وقتی دارید
Crawler
می‌نویسید دانلود اون صفحه توسط پکیج requests هست که خیلی زمانبر هست نه پیدا کردن چندتا تگ توی html اون صفحه؛ هرچیزی غیر از CPU بمحض درگیر شدن کدهارو
I/O bound
می‌کنه، ولی خب به نسبت پردازش بهش نگاه می‌کنیم اگر از پردازش وقت بیشتری بگیره کدهای شما
I/O Blocking
هستند اگر از پردازش وقت کمتری بگیره کدهای شما
CPU Blocking

برای همین خیلی وقتا
Multiprocessing, Multithreading
توی پایتون، بهبود سرعتی که نمی‌ده هیچ اجرا رو کندتر هم می‌کنه (این چیزی هست که زیاد می‌شنوم و می‌فهمم طرفم حتی مفاهیم ساده علوم کامپیوتر رو هم نمی‌دونه و خودش رو برنامه‌نویس می‌دونه)

برای تسک‌های I/O blocking باید از
asyncio
استفاده کنید، اما صرف نوشتن
async, await

هیچ اتفاقی نمیوفته (اینو میلیاردها بار توی کدهای fastApi می‌بینید) await اصلا از خود کلمه‌اش مشخص هست (من همیشه اینطوری درس میدادم)
A wait
ی ذره صبر کنیم تا جواب این خط کد بیاد بعد ادامه میدیم، و همینجوری کیلویی استفاده کردنش هیچ کمکی نمی‌کنه

از طرف دیگه کتابخونه‌ای که توی پروژه
Async
استفاده میشه هم مهم هست، مثلاً برای ارسال درخواست روی web دیگه نمی‌تونید از requests استفاده کنید باید اون کتابخونه هم async رو پشتیبانی کنه مثلاً بعنوان جایگزین

HttpX, aiohttp



با این مطلب می‌تونید خیلی وقتا متوجه بشید ی دوره آموزش
asyncio
کلاهبرداری هست یا واقعی (چون خیلی از آدمهای بسیار معروف توی دنیای پایتون رو دیدم، که asyncio رو اشتباه تدریس می‌کنند.)

ولی بازم منبع اصلی کتابی هست که آخر پیام‌های پین شده گذاشتم برای
Async

BY Python Hints


Share with your friend now:
tgoop.com/pyHints/137

View MORE
Open in Telegram


Telegram News

Date: |

Invite up to 200 users from your contacts to join your channel Telegram is a leading cloud-based instant messages platform. It became popular in recent years for its privacy, speed, voice and video quality, and other unmatched features over its main competitor Whatsapp. Judge Hui described Ng as inciting others to “commit a massacre” with three posts teaching people to make “toxic chlorine gas bombs,” target police stations, police quarters and the city’s metro stations. This offence was “rather serious,” the court said. Matt Hussey, editorial director at NEAR Protocol also responded to this news with “#meIRL”. Just as you search “Bear Market Screaming” in Telegram, you will see a Pepe frog yelling as the group’s featured image. How to create a business channel on Telegram? (Tutorial)
from us


Telegram Python Hints
FROM American