Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

مراجعة - جمع القوائم المتداخلة

جزء من قسم Logic & Flow في رحلة Python على Coddy — الدرس 62 من 78.

challenge icon

التحدي

سهل

اكتب دالة عودية (recursive function) تسمى sum_nested تأخذ قائمة متداخلة nested_list كوسيط (argument). يجب أن تقوم الدالة بما يلي:

  1. جمع كل الأعداد الصحيحة في القائمة، بما في ذلك الأعداد الصحيحة في أي قوائم فرعية.
  2. إرجاع المجموع الكلي كعدد صحيح.

يمكنك التحقق مما إذا كان العنصر عبارة عن قائمة باستخدام isinstance(element, list)

مثال للمدخلات:

nested_list = [1, [2, 3], [4, [5, 6]], 7]

مثال للمخرجات:

28

جرّب بنفسك

def sum_nested(nested_list):
    total = 0
    for element in nested_list:
        if isinstance(element, list):  # التحقق مما إذا كان العنصر عبارة عن قائمة
            # TODO: استدعاء sum_nested بشكل متكرر على القائمة الفرعية وإضافتها إلى المجموع
            pass
        else:
            # TODO: إضافة العدد الصحيح مباشرة إلى المجموع
            pass
    return total

جميع دروس Logic & Flow