إنyieldkeyword في Python هي ميزة قوية تحول الدوال العادية إلى generators، مما يتيح التكرار الفعال للذاكرة عبر مجموعات البيانات الكبيرة.
الكلمة المفتاحية yield في Python هي ميزة قوية تحول الدوال العادية إلى generators، مما يتيح التكرار الفعال للذاكرة عبر مجموعات البيانات الكبيرة.
ماذا يفعل Yield؟
عندما تحتوي دالة علىyield، تصبح دالة generator. بدلاً من إرجاع قيمة واحدة والإنهاء، فإنها تنتج تسلسلاً من القيم مع مرور الوقت، وتوقف التنفيذ مؤقتاً بين كل قيمة وتحافظ على حالتها.
الفروقات الأساسية عن Return

🎨 AI Generated: الاختلافات الرئيسية عن Return
بينماreturnيخرج من الدالة بشكل كامل،yieldيوقف التنفيذ ويتذكر حالة الدالة. في المرة التالية التي يتم فيها استدعاء الـ generator، يستأنف التنفيذ مباشرة بعدyieldالتعليمة.
مثال أساسي
def count_up_to(n):
i = 1
while i<= n:
yield i
i += 1
ينتج هذا الـ generator الأرقام واحداً تلو الآخر دون تخزين التسلسل بأكمله في الذاكرة.
فوائد استخدام Yield

🎨 AI Generated: فوائد استخدام Yield
Memory Efficiency:تنتج Generators القيم عند الطلب بدلاً من تخزين التسلسلات بأكملها في الذاكرة. وهذا أمر بالغ الأهمية لمجموعات البيانات الكبيرة.
Lazy Evaluation:يتم حساب القيم فقط عند الحاجة إليها، مما يحسن الأداء للعمليات التي قد لا تحتاج إلى جميع القيم.
المتسلسلات اللانهائية:يمكنك إنشاء generators تنتج متسلسلات لانهائية دون نفاد الذاكرة.
حالة استخدام عملية
def read_large_file(file_path):
with open(file_path) as file:
for line in file:
yield line.strip()
هذا يقرأ الملف سطراً بسطر دون تحميل الملف بالكامل في الذاكرة، مثالي لمعالجة الملفات الكبيرة.
الخلاصة

🎨 AI Generated: الخلاصة
إنyieldkeyword ضروري لكتابة كود Python فعال. يتيح إنشاء generators تتعامل مع datasets كبيرة بشكل أنيق مع الحفاظ على كود نظيف وسهل القراءة.
🚀 ابقَ في صدارة المنحنى التقني
احصل على رؤى تقنية يومية ومراجعات صادقة وأدلة عملية.
✍️ Leave a Comment