استخدام تجميع البيانات
جزء من قسم Logic & Flow في رحلة Python على Coddy — الدرس 53 من 78.
توفر ميزة فهم القوائم (List comprehensions) طريقة موجزة لإنشاء قوائم جديدة بناءً على كائنات قابلة للتكرار (iterables) موجودة. يمكنك دمج دوال تجميع البيانات مثل sum() و min() و max() مباشرةً داخل فهم القوائم لإجراء حسابات على عناصر القائمة الجديدة أثناء إنشائها.
حساب مجموع المربعات:
numbers = [1, 2, 3, 4, 5]
sum_of_squares = sum([n * n for n in numbers])
print(sum_of_squares)
# الناتج: 55في هذا المثال، يقوم تعبير القائمة (list comprehension) [n * n for n in numbers] بإنشاء قائمة من المربعات، وتقوم الدالة sum() بحساب مجموع هذه المربعات.
إيجاد القيمة الصغرى للقيم المحولة:
numbers = [-3, -1, 0, 1, 3]
min_absolute = min([abs(n) for n in numbers])
print(min_absolute)
# المخرج: 0هنا، يقوم استيعاب القائمة [abs(n) for n in numbers] بإنشاء قائمة من القيم المطلقة، وتجد الدالة min() القيمة الصغرى في هذه القائمة.
إيجاد القيمة القصوى للقيم التي تمت تصفيتها:
numbers = [1, 2, 3, 4, 5, 6]
max_even = max([n for n in numbers if n % 2 == 0])
print(max_even)
# المخرجات: 6في هذا المثال، يقوم تعبير القائمة (list comprehension) [n for n in numbers if n % 2 == 0] بإنشاء قائمة بالأرقام الزوجية، وتجد الدالة max() القيمة العظمى في هذه القائمة.
التحدي
سهلاكتب دالة sum_positive_evens تأخذ قائمة من الأرقام كمدخل. استخدم list comprehension لتصفية الأرقام الزوجية الموجبة، ثم استخدم sum() لحساب مجموعها. أرجع النتيجة.
مثال للمدخلات:
numbers = [-10, -5, 0, 2, 4, 7, 10, 12]مثال للمخرجات:
28ورقة مرجعية
يمكن دمج فهم القوائم (List comprehensions) مع دوال التجميع مثل sum() و min() و max() لإجراء عمليات حسابية على البيانات المحولة أو المصفاة.
حساب مجموع المربعات:
numbers = [1, 2, 3, 4, 5]
sum_of_squares = sum([n * n for n in numbers])
# Output: 55إيجاد القيمة الصغرى للقيم المحولة:
numbers = [-3, -1, 0, 1, 3]
min_absolute = min([abs(n) for n in numbers])
# Output: 0إيجاد القيمة الكبرى للقيم المصفاة:
numbers = [1, 2, 3, 4, 5, 6]
max_even = max([n for n in numbers if n % 2 == 0])
# Output: 6جرّب بنفسك
def sum_positive_evens(numbers):
# اكتب الكود هنايتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Logic & Flow
1استكشاف المتغيرات
الثوابتإسناد المتغيرات المتعددةتبديل المتغيراتالمتغيرات النائبةتقريب الأرقامتحويل القوائم4تطبيق سجل جهات الاتصال
عرض القائمةإضافة جهة اتصال7المجموعات - الجزء الثاني
العمليات الرياضية - الجزء الأولالعمليات الرياضية - الجزء الثانيمراجعة - البحث عن الكنزالمجموعات الجزئية والمجموعات الشاملةالتكرار عبر المجموعاتمراجعة - متتبع البطولة10أساسيات تضمين القوائم (List Comprehensions)
الصيغة البرمجيةإنشاء قوائم بسيطةإضافة الشروطاستخدام تجميع البياناتمراجعة - بيت القوائممراجعة - عناصر الحرية5اتخاذ القرارات المتقدم
المعامل الثلاثيالتحقق من الانتماءالتحقق من الهويةأخطاء الإزاحةمراجعة - فلتر العطلات8مدير سجلات الطلاب
نظرة عامة على المشروعإضافة طالب3القواميس - الجزء الثاني
دوال القواميسالقواميس المتداخلةالتحقق من وجود المفاتيحالتكرار عبر القواميسمراجعة - عداد التكرار9تجميع البيانات المتقدم
استخدام Sumإيجاد الحد الأدنى والأقصىفرز البيانات بكفاءةمراجعة - Dictionary Sorter12أساسيات معالجة الأخطاء
ما هي معالجة الأخطاء؟كتلة Try و Exceptالتعامل مع استثناءات متعددةمراجعة - أخطاء عربة التسوق