منتدى رواية عشق

منتدى رواية عشق (https://r-eshq.com/vb/index.php)
-   ϟ تَطويـر المُنتديـات ϟ (https://r-eshq.com/vb/forumdisplay.php?f=52)
-   -   ما هي المولدات في بايثون Python Generators (https://r-eshq.com/vb/showthread.php?t=242542)

Şøķåŕą 10-10-2023 07:55 PM

ما هي المولدات في بايثون Python Generators
 
في بايثون، المولد هو دالة تقوم بإرجاع مكرر ينتج سلسلة من القيم عند تكرارها، وتكون المولدات مفيدة عندما نريد إنتاج تسلسل كبير من القيم، لكننا لا نريد تخزينها جميعًا في الذاكرة مرة واحدة.

كيفية إنشاء مولد بايثون
في لغة البرمجة بايثون، على غرار تحديد وظيفة عادية، يمكننا تحديد وظيفة المولد باستخدام الكلمة الأساسية (def)، ولكن بدلاً من عبارة الإرجاع (return)، نستخدم عبارة (yield)، انظر ما يلي:

def generator_name(arg):

# statements

yield something

هنا، يتم استخدام الكلمة الأساسية (yield) لإنتاج قيمة من المولد، كما أنه عندما يتم استدعاء وظيفة المولد، فإنها لا تقوم بتنفيذ الوظيفة على الفور، بدلاً من ذلك، تقوم بإرجاع كائن منشئ يمكن تكراره للحصول على القيم، فيما يلي مثال على وظيفة المولد التي تنتج سلسلة من الأرقام:

def my_generator(n):

# initialize counter

value = 0

# loop until counter is less than n

while value < n:

# produce the current value of the counter

yield value

# increment the counter

value += 1

# iterate over the generator object produced by my_generator

for value in my_generator(3):

# print each value produced by generator

print(value)

وتكون المخرجات كالاتي:


0

1

2

ما هي استخدامات مولدات بايثون
هناك العديد من الأسباب التي تجعل المولدات تطبيقًا فعالاً:

سهلة التنفيذ: يمكن تنفيذ المولدات بطريقة واضحة وموجزة مقارنة بنظيرتها من فئة التكرار.
كفاءة الذاكرة: يعد تنفيذ المولد للتسلسلات أمرًا ملائمًا للذاكرة ويفضل لأنه ينتج عنصرًا واحدًا فقط في كل مرة.
تمثل التدفق اللانهائي: المولدات هي وسائط ممتازة لتمثيل دفق غير محدود من البيانات، ولا يمكن تخزين التدفقات اللانهائية في الذاكرة، وبما أن المولدات تنتج عنصرًا واحدًا فقط في كل مرة، فإنها يمكن أن تمثل دفقًا لا نهائيًا من البيانات.

بنت العز 10-10-2023 08:01 PM

سلمت الأيادي ..
ويعطيك العافية

α м м α ʀ 10-10-2023 08:26 PM

يسلمو على روعة طرحك
الله يعطيك العافيه
ولك الشكر والتقدير

نبضها مطيري 10-10-2023 08:53 PM

طرح جميل
يعطيك العافيه

حاء 10-11-2023 03:51 AM

-


شُكرًا على جمـال طرحك المميز :x37:
لا حرمنا الله من إبداعك المُستمر
و الله يعطيكِ الف عافيه .
لك :f15:

زمردة ❥ 10-11-2023 05:33 AM

موضوع رائع
يعطيكـ العافيهـ \ الف شكر ع طرحك
".بشوق لجديدكـ


الساعة الآن 12:34 AM

Powered by vBulletin Hosting By R-ESHQ
HêĽм √ 3.1 BY: ! RESHQ ! © 2010
new notificatio by R-ESHQ
User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
تنويه : المشاركات المطروحة تعبر عن وجهة نظر أصحابها وليس بالضرورة تمثل رأي أدارة الموقع