Forwarded from Matin
سوال پایتونی 🔥:
مفهوم Generators و Coroutines در Python را توضیح دهید. یک مثال کاربردی از استفاده از آنها ارائه دهید.
Generators:
در Python توابعی هستند که مقادیر را یکی پس از دیگری تولید میکنند، به جای محاسبه و بازگرداندن یک لیست کامل. این امر منجر به صرفهجویی در حافظه و کارایی بهتر میشود.
Coroutines:
در Python نوعی توابع ویژهای هستند که میتوانند در طول اجرای خود چندین بار متوقف و از سر گرفته شوند. آنها برای انجام عملیاتهای همزمان و غیرمتوالی مانند برنامهنویسی شبکه یا برنامهنویسی رویدادی مفید هستند.
مثال کاربردی: فرض کنید میخواهیم یک تابع بنویسیم که اعداد فیبوناچی را تا یک حد مشخص تولید کند. میتوانیم از یک generator برای این کار استفاده کنیم:
در این مثال، fibonacciGenerator یک generator است که در هر بار فراخوانی، عدد بعدی در دنباله فیبوناچی را تولید میکند. این روش کارآمدتر از محاسبه و ذخیره کل دنباله در یک لیست است.
یک مثال از استفاده از coroutines:
#python
#generators #coroutines
@programmers_land
  مفهوم Generators و Coroutines در Python را توضیح دهید. یک مثال کاربردی از استفاده از آنها ارائه دهید.
Generators:
در Python توابعی هستند که مقادیر را یکی پس از دیگری تولید میکنند، به جای محاسبه و بازگرداندن یک لیست کامل. این امر منجر به صرفهجویی در حافظه و کارایی بهتر میشود.
Coroutines:
در Python نوعی توابع ویژهای هستند که میتوانند در طول اجرای خود چندین بار متوقف و از سر گرفته شوند. آنها برای انجام عملیاتهای همزمان و غیرمتوالی مانند برنامهنویسی شبکه یا برنامهنویسی رویدادی مفید هستند.
مثال کاربردی: فرض کنید میخواهیم یک تابع بنویسیم که اعداد فیبوناچی را تا یک حد مشخص تولید کند. میتوانیم از یک generator برای این کار استفاده کنیم:
def fibonacciGenerator(n):
a, b = 0, 1
for _ in range(n):
yield a
a, b = b, a + b
for num in fibonacciGenerator(10):
print(num)
در این مثال، fibonacciGenerator یک generator است که در هر بار فراخوانی، عدد بعدی در دنباله فیبوناچی را تولید میکند. این روش کارآمدتر از محاسبه و ذخیره کل دنباله در یک لیست است.
یک مثال از استفاده از coroutines:
def consumer():در این مثال، consumer یک coroutine است که دادههای دریافتی را چاپ میکند. producer یک تابع است که دادهها را به coroutine consumer ارسال میکند. این نمونهکد نشان میدهد چگونه میتوان از coroutines برای ارتباط و مبادله دادهها بین دو تابع استفاده کرد.
while True:
received = yield
print(f"Received: {received}")
def producer(consumer_coroutine):
consumer = consumer_coroutine
next(consumer) # Advance to the yield keyword
n = 0
while True:
n += 1
print(f"Producing: {n}")
consumer.send(n)
if n == 5:
break
consumer_cor = consumer()
producer(consumer_cor)
#python
#generators #coroutines
@programmers_land
Forwarded from Programming facts (Soheil)
  
بارها در مورد الگوریتم اینستاگرام شنیدیم! بیاین بیشتر در موردش صحبت کنیم! 
اینستاگرام تمام فعالیت شما رو ثبت میکنه! اینکه چه مدت زمانی تو اینستا هستین! روی هر موضوع چند ثانیه وامیستین! کدوم موضوع ها رو رد میکنین! چند تا موضوع رو دنبال میکنین! با ریئکشنهاتون میفهمه، چند درصد خوشحالین، چقدر خشمگینین، چرا ناامیدین! تمام این اطلاعات در دو قلوی مجازی شما ثبت میشه و الگوریتم متوجه میشه کاربر x کسی هست که n ویژگی ها رو داره!
چرا اینکار رو میکنه؟ برای اینکه با استفاده از اطلاعاتی که از شما داره، محتوایی براتون پخش کنه که شما از اپلیکشنش خارج نشین!
در واقع داره سطح تعامل اپلیکیشن با آدما رو بالا میبره تا رضایت کاربران رو جلب کنه و مدت زمان بیشتری اونا رو نگه داره!
افزایش سطح تعامل تکنولوژی با انسان یکی از هدفهای اصلی شرکتهای بزرگه! الگوریتم اینستاگرام هم یکی از مثالهاش بود!
اما این افزایش تعامل مثل دو لبهی تیغ میمونه! یه لبش زندگی رو راحتتر میکنه و لبهی دیگه روی تعامل بین فردی تاثیر میذاره و ممکنه زندگی اجتماعی رو احاطه کنه!
این آدمان که باید تصمیم بگیرن کدوم لبه رو انتخاب کنن...
@soheil_programmer
  اینستاگرام تمام فعالیت شما رو ثبت میکنه! اینکه چه مدت زمانی تو اینستا هستین! روی هر موضوع چند ثانیه وامیستین! کدوم موضوع ها رو رد میکنین! چند تا موضوع رو دنبال میکنین! با ریئکشنهاتون میفهمه، چند درصد خوشحالین، چقدر خشمگینین، چرا ناامیدین! تمام این اطلاعات در دو قلوی مجازی شما ثبت میشه و الگوریتم متوجه میشه کاربر x کسی هست که n ویژگی ها رو داره!
چرا اینکار رو میکنه؟ برای اینکه با استفاده از اطلاعاتی که از شما داره، محتوایی براتون پخش کنه که شما از اپلیکشنش خارج نشین!
در واقع داره سطح تعامل اپلیکیشن با آدما رو بالا میبره تا رضایت کاربران رو جلب کنه و مدت زمان بیشتری اونا رو نگه داره!
افزایش سطح تعامل تکنولوژی با انسان یکی از هدفهای اصلی شرکتهای بزرگه! الگوریتم اینستاگرام هم یکی از مثالهاش بود!
اما این افزایش تعامل مثل دو لبهی تیغ میمونه! یه لبش زندگی رو راحتتر میکنه و لبهی دیگه روی تعامل بین فردی تاثیر میذاره و ممکنه زندگی اجتماعی رو احاطه کنه!
این آدمان که باید تصمیم بگیرن کدوم لبه رو انتخاب کنن...
@soheil_programmer
آقا الان که انقدر بحث این همستر داغه و هر کیو میبینی یه گوشی دستشه داره کلیک میکنه یه صحبتی هم ما بکنیم
آقا بحث اینکه این ارز اصلا قراره پول بشه یا نه رو کاری ندارم ولی خودتون فکر نمیکنید یه جای کار داره میلنگه؟ نمیدونم اینکه انگار یه جور سیاست پشت این حرکت هست که یه جوون ۲۰ ۲۵ به جای اینکه وقتش رو بزاره رو هدفاشو آیندش میشینه تو خونه فقط کلیک میکنه
آقا من کمتر از اونیم که بخوام بگم چیکار بکنید چیکار نکنید ولی حتی اگه این همستر پول هم بشه براتون بازم نمیتونه ارزش اون وقتی که هدر دادید رو برگردونه
من خودمم دارم ولی مثل بعضیاتون دیگه خیلی پیگیرید
حالا تصمیم با خودتونه
یا حق.
@matrix_py
آقا بحث اینکه این ارز اصلا قراره پول بشه یا نه رو کاری ندارم ولی خودتون فکر نمیکنید یه جای کار داره میلنگه؟ نمیدونم اینکه انگار یه جور سیاست پشت این حرکت هست که یه جوون ۲۰ ۲۵ به جای اینکه وقتش رو بزاره رو هدفاشو آیندش میشینه تو خونه فقط کلیک میکنه
آقا من کمتر از اونیم که بخوام بگم چیکار بکنید چیکار نکنید ولی حتی اگه این همستر پول هم بشه براتون بازم نمیتونه ارزش اون وقتی که هدر دادید رو برگردونه
من خودمم دارم ولی مثل بعضیاتون دیگه خیلی پیگیرید
حالا تصمیم با خودتونه
یا حق.
@matrix_py
🙏1
  
  In backend way
پشماتون میریزه اگه بفهمید با پایتون میشه ویدیو ادیت کرد😂  @matrix_py
برای این حرکت باید از کتابخونه moviepy استفاده کنید که میتونید اینطوری نصبش کنید 
واسه استفاده کردن هم کافیه فراخوانیش کنید داخل کد ادیتورتون
برای اینکه یه ویدیو رو باز کنیم فقط کافیه :
و به جای name اسم اون فایل ویدیوییتون رو مینویسید
@matrix_py
  pip install moviepy
واسه استفاده کردن هم کافیه فراخوانیش کنید داخل کد ادیتورتون
from moviepy.editor import *
برای اینکه یه ویدیو رو باز کنیم فقط کافیه :
video = VideoFileClip("name.mp4")و به جای name اسم اون فایل ویدیوییتون رو مینویسید
@matrix_py
  In backend way
برای این حرکت باید از کتابخونه moviepy استفاده کنید که میتونید اینطوری نصبش کنید  pip install moviepy واسه استفاده کردن هم کافیه فراخوانیش کنید داخل کد ادیتورتون  from moviepy.editor import * برای اینکه یه ویدیو رو باز کنیم فقط کافیه : video = VideoFileClip("name.mp4")…
حالا باهاش میتونید داخل ویدیوتون زیرنویس بزارید جای زیرنویستون رو مشخص کنید یا دوتا ویدیو رو با هم ترکیب کنید سایز ویدیو هاتون رو تغییر بدید و ....
@matrix_py
  @matrix_py
بچه ها من واقعا چیز زیادی از کامپیوتر و برنامه نویسی نمیدونم 
ممنون میشم اگه چیز جالب و بدرد بخوری پیدا کردید برای منم بفرستین که یاد بگیرم
@khodeshonam
  ممنون میشم اگه چیز جالب و بدرد بخوری پیدا کردید برای منم بفرستین که یاد بگیرم
@khodeshonam
نظرتونه یکم راجب جنگو صحبت کنیم؟ اینکه چی هست و پیش نیازاش چیاست و اینطور چیزا؟
  Final Results
    71%
    آره
      
    29%
    نه
      
    
  In backend way
نظرتونه یکم راجب جنگو صحبت کنیم؟ اینکه چی هست و پیش نیازاش چیاست و اینطور چیزا؟
خب آقا بریم که ببینیم اصلا جنگو چیه؟
جنگو یه فریم ورک سطح بالای پایتونه
حالا خود فریمورک چیه اصلا؟
فریمورک به مجموعه ای از کدها و کتابخونه ها و ابزار و رابط های برنامه نویسیه که توسعه دهنگان(Developer) با استفاده از اون میتونن تو حوزه خودشون اونو توسعه بدن
واسه شروع جنگو شما اولین و مهم ترین چیزی رو که باید یاد بگیرین پایتونه
و باید مهارتایی مثل حل مساله(الگوریتم و فلوچارت) ، مفاهیم پایه پایتون(توابع ، لیست ها و ...) ، و همچنین کار کردن با محیط مجازی و پکیج ها رو یاد بگیرید
سعی کنید خیلی راحت ازین قسمت پایه نگذرید چون توی جنگو به مشکل میخورید
بعد از یادگیری مفاهیم مقدماتی و پایه میرسیم به اصل موضوع مباحثی مثل:
شی گرایی(oop)
کار با ماژول ها
کار با iteratos , decorators
کار با lambdas
کار با multi-processing , multi-threading
تست نویسی
این مباحث میشه گفت مهم ترین بخشای پایتونن که خب باید یاد بگیرید
بعد از اینکه توی پایتون به مهارت کافی رسیدین یه سری مهارت های جانبی وجود دارن که برای راحتی کارتون بهتره یادبگیرید
کار با git , github (خیلی مهم)
آشنایی با پروتکل های وب
آشنایی مقدماتی با جاوا اسکریپت
آشنایی با html , css
آشنایی با sql , nosql
بعد از این شما میتونید وارد فریمورک جنگو بشید
این نکته رو هم اضافه کنم که جنگو یه فریم ورک برای توسعه وبسایت سمت بک انده
و در کل همین دیگه
امیدوارم به دردتون بخوره
  جنگو یه فریم ورک سطح بالای پایتونه
حالا خود فریمورک چیه اصلا؟
فریمورک به مجموعه ای از کدها و کتابخونه ها و ابزار و رابط های برنامه نویسیه که توسعه دهنگان(Developer) با استفاده از اون میتونن تو حوزه خودشون اونو توسعه بدن
واسه شروع جنگو شما اولین و مهم ترین چیزی رو که باید یاد بگیرین پایتونه
و باید مهارتایی مثل حل مساله(الگوریتم و فلوچارت) ، مفاهیم پایه پایتون(توابع ، لیست ها و ...) ، و همچنین کار کردن با محیط مجازی و پکیج ها رو یاد بگیرید
سعی کنید خیلی راحت ازین قسمت پایه نگذرید چون توی جنگو به مشکل میخورید
بعد از یادگیری مفاهیم مقدماتی و پایه میرسیم به اصل موضوع مباحثی مثل:
شی گرایی(oop)
کار با ماژول ها
کار با iteratos , decorators
کار با lambdas
کار با multi-processing , multi-threading
تست نویسی
این مباحث میشه گفت مهم ترین بخشای پایتونن که خب باید یاد بگیرید
بعد از اینکه توی پایتون به مهارت کافی رسیدین یه سری مهارت های جانبی وجود دارن که برای راحتی کارتون بهتره یادبگیرید
کار با git , github (خیلی مهم)
آشنایی با پروتکل های وب
آشنایی مقدماتی با جاوا اسکریپت
آشنایی با html , css
آشنایی با sql , nosql
بعد از این شما میتونید وارد فریمورک جنگو بشید
این نکته رو هم اضافه کنم که جنگو یه فریم ورک برای توسعه وبسایت سمت بک انده
و در کل همین دیگه
امیدوارم به دردتون بخوره
الگوریتم چیه؟
یه مجموعه محدود(متناهی) و منظمیه که با دنبال کردن اون میتونیم مسئله رو حل کنیم.
همچنین به زبان ساده تر میشه اینطوری توضیح داد یه سری مراحل برای انجام دادن و کامل کردن یک تسک یا برنامه
به عنوان مثال میشه اینطوری گفت که برای تولید یک نان شما اول باید آرد تهیه کنید بعدش اون رو خمیر کنید بهش حرارت به مقدار کافی بدید تا بتونید به نتیجه اصلیتون برسید
@matrix_py
  یه مجموعه محدود(متناهی) و منظمیه که با دنبال کردن اون میتونیم مسئله رو حل کنیم.
همچنین به زبان ساده تر میشه اینطوری توضیح داد یه سری مراحل برای انجام دادن و کامل کردن یک تسک یا برنامه
به عنوان مثال میشه اینطوری گفت که برای تولید یک نان شما اول باید آرد تهیه کنید بعدش اون رو خمیر کنید بهش حرارت به مقدار کافی بدید تا بتونید به نتیجه اصلیتون برسید
@matrix_py
آقا یه چیز جالب دیگهای که امروز دیدم این بود که با پایتون هم میتونی صدا ضبط کنی این مدت یذره درگیرم سرم خلوت تر بشه یکم باهاش کار میکنم طریقه کار کردش رو اینجا هم به اشتراک میزارم