بايثون بالمثال 4: حساب مجموع عناصر List في Python بأكثر من طريقة

بايثون بالمثال 4 حساب مجموع عناصر List في Python باستخدام sum و for loop

في هذا الدرس من سلسلة بايثون بالمثال سنتعلم كيف نحسب مجموع عناصر قائمة List في Python بأكثر من طريقة سهلة وواضحة.

هذا المثال مهم جدًا لأي شخص يريد تعلم بايثون بالعربي، لأن جمع عناصر القائمة يتكرر في برامج كثيرة، مثل حساب مجموع الدرجات، مجموع الأسعار، مجموع النقاط، أو أي بيانات رقمية داخل البرنامج.

سنبدأ بالطريقة الأسهل باستخدام الدالة الجاهزة sum()، ثم نكتب الحل يدويًا باستخدام for loop حتى تفهم كيف تتم عملية الجمع خطوة بخطوة.

{getToc} $title={محتوى المقال}

{alertInfo} هذا الدرس مناسب لك إذا كنت تعرف أساسيات القوائم Lists والحلقات Loops، وتريد تطبيقًا عمليًا بسيطًا في بايثون.

قائمة أرقام في Python يتم جمع عناصرها للحصول على الناتج النهائي

فكرة المثال

لدينا قائمة تحتوي على مجموعة أرقام:

numbers = [10, 20, 30, 40]

ونريد حساب مجموع هذه الأرقام:

10 + 20 + 30 + 40 = 100

إذن النتيجة المتوقعة هي:

100

الطريقة الأولى: حساب مجموع عناصر List باستخدام sum

أسهل طريقة لحساب مجموع عناصر قائمة في Python هي استخدام الدالة الجاهزة sum().

numbers = [10, 20, 30, 40]

total = sum(numbers)

print(total)

الناتج:

100

الدالة sum() تمر على عناصر القائمة وتجمعها، ثم تعيد الناتج النهائي.

{alertSuccess} إذا كانت القائمة تحتوي على أرقام فقط، فالدالة sum هي أسهل وأوضح حل لحساب المجموع.

استخدام دالة sum في Python لحساب مجموع عناصر List بطريقة مباشرة

الطريقة الثانية: حساب المجموع باستخدام for loop

رغم أن sum() هي الطريقة الأسهل، لكن من المهم للمبتدئ أن يفهم كيف يتم حساب المجموع يدويًا باستخدام حلقة for.

numbers = [10, 20, 30, 40]

total = 0

for number in numbers:
    total = total + number

print(total)

الناتج:

100

شرح كود for loop خطوة بخطوة

في البداية أنشأنا قائمة أرقام:

numbers = [10, 20, 30, 40]

بعدها أنشأنا متغيرًا اسمه total وبدأناه بقيمة صفر:

total = 0

ثم استخدمنا حلقة تمر على كل رقم داخل القائمة:

for number in numbers:
    total = total + number

في كل دورة من الحلقة، يتم إضافة الرقم الحالي إلى المتغير total.

الدورة قيمة number قيمة total بعد الجمع
الأولى 10 10
الثانية 20 30
الثالثة 30 60
الرابعة 40 100
شرح زيادة قيمة total داخل for loop عند جمع عناصر قائمة في Python

الطريقة الثالثة: استخدام الاختصار +=

بدل كتابة:

total = total + number

يمكنك استخدام الاختصار += بهذا الشكل:

total += number

الكود الكامل:

numbers = [10, 20, 30, 40]

total = 0

for number in numbers:
    total += number

print(total)

الناتج:

100
{alertInfo} الاختصار += يعني: أضف القيمة الجديدة إلى القيمة الحالية للمتغير.

حساب مجموع قائمة تحتوي على أرقام عشرية

يمكن استخدام sum() أيضًا مع الأرقام العشرية.

prices = [10.5, 20.75, 5.25]

total = sum(prices)

print(total)

الناتج:

36.5

هذا المثال مفيد عند حساب مجموع أسعار المنتجات أو درجات تحتوي على كسور.

ماذا يحدث إذا كانت القائمة تحتوي على نصوص؟

الدالة sum() تعمل مع الأرقام، لكنها قد تسبب خطأ إذا كانت القائمة تحتوي على نصوص.

مثال خاطئ:

items = [10, "20", 30]

print(sum(items))

المشكلة هنا أن العنصر "20" نص وليس رقمًا.

{alertWarning} قبل استخدام sum تأكد أن جميع عناصر القائمة أرقام وليست نصوصًا.

حل مشكلة الأرقام المكتوبة كنصوص

إذا كانت الأرقام داخل القائمة مكتوبة كنصوص، يمكن تحويلها إلى أرقام باستخدام int().

numbers = ["10", "20", "30"]

total = 0

for number in numbers:
    total += int(number)

print(total)

الناتج:

60

لكن انتبه: إذا كان النص لا يمثل رقمًا صحيحًا، مثل "hello"، فقد يظهر خطأ ValueError.

اقرأ أيضًا: حل خطأ ValueError invalid literal for int في Python.

حساب مجموع الأرقام من إدخال المستخدم

الآن لنأخذ مثالًا عمليًا أكثر. سنطلب من المستخدم إدخال أرقام مفصولة بمسافة، ثم نحسب مجموعها.

user_input = input("Enter numbers separated by spaces: ")

numbers = user_input.split()

total = 0

for number in numbers:
    total += int(number)

print("Total:", total)

مثال إدخال:

10 20 30

الناتج:

Total: 60

في هذا المثال استخدمنا split() لتقسيم النص الذي أدخله المستخدم إلى قائمة، ثم حولنا كل عنصر إلى رقم باستخدام int().

مقارنة بين sum و for loop و += لحساب مجموع عناصر List في Python

الفرق بين sum و for loop

الطريقة متى تستخدمها؟ مناسبتها للمبتدئ
sum() عندما تريد الحل الأسرع والمباشر سهلة جدًا
for loop عندما تريد فهم طريقة الجمع خطوة بخطوة مهمة للتعلم
+= عندما تريد اختصار تحديث قيمة المتغير سهلة بعد فهم الحلقات

أخطاء شائعة عند جمع عناصر القائمة

1. وجود نص داخل قائمة الأرقام

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

numbers = [10, "20", 30]

الحل هو تحويل النصوص إلى أرقام قبل الجمع.

2. نسيان قيمة البداية total = 0

عند استخدام for loop يجب أن تبدأ بمتغير قيمته صفر.

total = 0

3. وضع print داخل الحلقة بالخطأ

إذا كتبت print(total) داخل الحلقة، سيطبع البرنامج قيمة المجموع في كل دورة.

numbers = [10, 20, 30]

total = 0

for number in numbers:
    total += number
    print(total)

الناتج:

10
30
60

أما إذا أردت طباعة الناتج النهائي فقط، اجعل print خارج الحلقة:

numbers = [10, 20, 30]

total = 0

for number in numbers:
    total += number

print(total)
{alertError} انتبه للمسافة البادئة. إذا كان print داخل الحلقة سيطبع في كل دورة، وإذا كان خارج الحلقة سيطبع الناتج النهائي فقط.

تمرين عملي: حساب مجموع الدرجات والمتوسط

اكتب برنامجًا يحتوي على قائمة درجات، ثم احسب مجموع الدرجات ومتوسطها.

grades = [80, 90, 75, 85]

total = sum(grades)
average = total / len(grades)

print("Total:", total)
print("Average:", average)

الناتج:

Total: 330
Average: 82.5

أسئلة شائعة حول جمع عناصر List في Python

كيف أحسب مجموع عناصر List في Python؟

أسهل طريقة هي استخدام الدالة sum() مثل:

total = sum(numbers)

هل يمكن جمع عناصر القائمة باستخدام for loop؟

نعم، يمكنك إنشاء متغير بقيمة صفر، ثم المرور على عناصر القائمة وإضافة كل عنصر إلى المجموع.

لماذا يظهر خطأ عند استخدام sum؟

غالبًا لأن القائمة تحتوي على نصوص بدل أرقام، مثل "20" بدل 20.

ما الفرق بين total = total + number و total += number؟

لا يوجد فرق في النتيجة. الصيغة += هي اختصار لعملية إضافة القيمة الجديدة إلى المتغير الحالي.

روابط مهمة من بايثون العرب

مصدر خارجي مفيد

يمكنك قراءة توثيق Python الرسمي حول الدالة sum() من هنا: Python Documentation - sum.

خلاصة المقال

في هذا الدرس من سلسلة بايثون بالمثال تعلمنا طريقة حساب مجموع عناصر List في Python باستخدام أكثر من طريقة.

استخدمنا الدالة sum() كحل سريع، ثم استخدمنا for loop لفهم طريقة الجمع خطوة بخطوة، وتعلمنا استخدام الاختصار +=.

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

{alertSuccess} أفضل طريقة لتعلم بايثون هي أن تأخذ مثالًا بسيطًا مثل هذا، ثم تغير عليه وتجرب أكثر من حل.

إرسال تعليق

أحدث أقدم