تعبيرات المولّدات
أنشئ تسلسلات كسولة باستخدام تعبيرات المولّدات لتحسين كفاءة الذاكرة
تعبيرات المولّدات درس مجاني في Python Academy على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Python Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Python Academy 4 دروس في المجموع.
مقدمة
صياغة تعبير المولّد
gen = (x**2 for x in range(5))
print(gen) # generator object
print(next(gen)) # 0
print(next(gen)) # 1كفاءة الذاكرة
total = sum(x**2 for x in range(100))
print(total)استهلاك مولّد
gen = (x for x in range(3))
for val in gen:
print(val)
# gen is now exhaustedالمولّد كوسيط لدالة
print(sum(x**2 for x in range(10)))
print(max(len(w) for w in ['cat', 'elephant', 'ant']))تسلسل المولّدات
evens = (x for x in range(100) if x % 2 == 0)
big_evens = (x for x in evens if x > 50)
print(list(big_evens))التحويل إلى list/tuple
gen = (x**2 for x in range(5))
print(list(gen))تعبير المولّد مقابل استيعاب القائمة
import sys
lst = [x**2 for x in range(1000)]
gen = (x**2 for x in range(1000))
print(sys.getsizeof(lst), sys.getsizeof(gen))المولّدات اللانهائية
import itertools
first10 = list(itertools.islice(itertools.count(0), 10))
print(first10)any() وall() مع المولّدات
nums = [1, 3, 7, 2]
print(any(x > 5 for x in nums))
print(all(x > 0 for x in nums))خطوط المعالجة
data = range(1000)
filtered = (x for x in data if x % 7 == 0)
transformed = (x * 2 for x in filtered)
print(sum(transformed))تحقق سريع
خلاصة
واصل التقدم
الأسئلة الشائعة
هل درس «تعبيرات المولّدات» مجاني؟
نعم — نص درس «تعبيرات المولّدات» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Python Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Python Academy 4 دروس في المجموع.
ماذا ستتعلم في «تعبيرات المولّدات»؟
أنشئ تسلسلات كسولة باستخدام تعبيرات المولّدات لتحسين كفاءة الذاكرة تتمرن على Python Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Python Academy؟
لا تُشترط خبرة سابقة. Python Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.
كم من الوقت يستغرق درس «تعبيرات المولّدات»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Python Academy هذا؟
نعم. كل درس في Python Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.