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

اكتشف كيفية تحويل قائمة متداخلة إلى قائمة مستقيمة بثلاث طرق مختلفة.

كيفية تسوية قائمة بايثون

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

سترى كيفية التعامل مع كل منهم في الأقسام التالية.

كيفية تسطيح قائمة متداخلة من القوائم باستخدام الدالة Sum ()

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

بينما يمكنك استخدام ملف إلى عن على حلقة لتسطيح قائمة القوائم ، فإن ملف مجموع() الوظيفة واضحة ومباشرة وأكثر قابلية للقراءة لأنها ملف لغة Python أحادية الخط:

nestedList = [[1، 3، 4]، [2، 4]، [7، 9، 0]]

flatList = sum (nestedList، [])
مطبعة(قائمة مسطحة)

# الإخراج: [1، 3، 4، 2، 4، 7، 9، 0]

instagram viewer

كيفية استخدام حلقة for لتسطيح قائمة متداخلة مختلطة

يمكنك استخدام ملف بايثون للحلقة لكل من أنواع البيانات المختلطة والمتجانسة. لذلك فهو يعمل سواء كانت القائمة المتداخلة تحتوي فقط على قوائم أو مجموعات أو مجموعات أو قواميس أو خليط منها:

nestedList = [[1، 3، 4]، (1، 5، 6)، {1، 2، 4}، {"ه": 3, "ا":9, "ر":7}]
قائمة مسطحة = []

بالنسبة لي في القائمة المتداخلة:
لـ k in i:
قائمة مسطحة.ألحق(ك)

مطبعة(قائمة مسطحة)

# الإخراج: [1، 3، 4، 1، 5، 6، 1، 2، 4، 'ه', 'ا', 'ر']

يمكنك أيضًا تحقيق ذلك من خلال قائمة الفهم:

flatList = [k for i in nestedList for k in i]

مطبعة(قائمة مسطحة)

# الإخراج: [1، 3، 4، 1، 5، 6، 1، 2، 4، 'ه', 'ا', 'ر']

تعامل مع قوائم Python كما تريد

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