[2022] فهم قائمة بايثون مع أمثلة

نشرت: 2021-06-29

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

  • قائمة الفهم
  • فهم القاموس
  • مجموعة الفهم
  • فهم المولد

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

جدول المحتويات

ما هو فهم القائمة؟

Python هي لغة برمجة مقبولة على نطاق واسع توفر للمستخدم القدرة على كتابة كود سهل وأنيق. يعد فهم القائمة أحد السمات المميزة لـ Python والتي يتم استخدامها لإنشاء قوائم جديدة. من خلال استخدام سطر واحد من التعليمات البرمجية ، يمكن إنشاء الوظيفة.

ليس من الضروري احتواء شرط if في قائمة الفهم ، ولكن يمكن احتواء عدة أشكال في قائمة الفهم.

لذلك ، ضع قائمة بالفهمات

  • هي طريقة أنيقة لتعريف وإنشاء قائمة على أساس القوائم الموجودة.
  • بالمقارنة مع الوظائف العادية لإنشاء القوائم والحلقات ، فإن القوائم الشاملة تكون أكثر إحكاما وأسرع.
  • لكي تكون الكود أكثر سهولة في الاستخدام ، يجب تجنب كتابة القوائم الطويلة الشاملة.
  • أثناء استخدام حلقة for ، يمكن إعادة كتابة list comprehensions.

كيف تصنع قائمة؟

توجد عدة طرق لإنشاء قوائم بلغة البرمجة python.

1. للحلقات

يمكن استخدام حلقة For لإنشاء قائمة. يجب اتباع ثلاث خطوات لإنشاء قائمة العناصر.

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

2. خريطة () كائنات

نهج بديل ، أي map () يعتمد على البرمجة الوظيفية. يتم إنشاء كائن عند تمرير دالة وعنصر قابل للتكرار إلى map (). سيتم احتواء الإخراج الذي سيتم إنشاؤه من تنفيذ العنصر القابل للتكرار من خلال الوظيفة المزودة في الكائن.

3. قائمة الفهم

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

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

هناك ثلاثة عناصر في كل قائمة بيثون .

  • التعبير: كونه عضوًا ، فإن التعبير هو استدعاء طريقة أو أي تعبيرات يتم إرجاع قيمة فيها.
  • العضو: قيمة أو عنصر في القائمة القابلة للتكرار. قيمة العضو هي 1 في المثال أعلاه.
  • قابل للتكرار: هو قائمة أو تسلسل أو مجموعة أو كائنات أخرى يمكن إرجاع عناصرها واحدًا تلو الآخر. قابل للتكرار هو النطاق (10) في المثال أعلاه.

يمكن أن يعمل فهم قائمة Python جيدًا حتى في الأماكن التي تستخدم map (). يمكن إعادة كتابة المثال أعلاه كـ.

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

عبارات شرطية

يمكن تعديل القوائم الحالية من خلال استخدام العبارات الشرطية في قائمة الفهم. يمكن تعديل كليهما إما list أو tuples من خلال Python list comprehensions.

1. باستخدام شرط

يمكن استخدام شرط "إذا" في قائمة الفهم من خلال الكود التالي.

يؤدي تشغيل البرنامج أعلاه إلى إنشاء الإخراج: [0 ، 2 ، 4 ، 6 ، 8 ، 10 ، 12 ، 14 ، 16 ، 18]

2. استخدام شرط IF المتداخل

تقوم قائمة الفهم بالفحوصات التالية:

  • هل العنصر y يقبل القسمة على 2 أم 5؟
  • إذا تم استيفاء كلا الشرطين بواسطة y ، فسيتم إلحاقه بـ num_list.

اقرأ أيضًا: تطبيقات بايثون الرائعة في العالم الحقيقي

3. استخدام if-else

في المثال الموضح أعلاه ، يتم التحقق من الأرقام العشرة ، أي من 0 إلى 10 بواسطة list comprehensions.

4. استخدام الحلقات المتداخلة

الناتج المتولد: [[1 ، 4] ، [2 ، 5] ، [3 ، 6] ، [4 ، 8]]

يتم حساب مدور المصفوفة من خلال استخدام حلقتين.

  • بالمقارنة مع الحلقات المتداخلة العادية ، تعمل الحلقات المتداخلة الموجودة في list comprehensions بشكل مختلف عن الحلقات المتداخلة الأخرى.

بناء الجملة

الصيغة الأساسية لفهم قائمة بايثون هي

[تعبير عن عنصر في القائمة]

لنفترض أن لدينا سلسلة نصية ونريد تكرارها من خلال استخدام قائمة الفهم.

في المثال أعلاه ، يمكن ملاحظة أن "الإنسان" يُستخدم كسلسلة وليس كقائمة. هنا تكمن قوة فهم قائمة بايثون . سواء كانت سلسلة أو مجموعة ، يمكن لقائمة الفهم التعرف عليها والعمل عليها كقائمة.

يمكن تنفيذ نفس الشيء باستخدام الحلقات. لكن ، لا يمكن أن يتبع بناء جملة فهم القائمة بالحلقات.

خاتمة

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

لذلك ، إذا كنت على استعداد للتعرف على Python وتنفيذها في التنقيب عن البيانات ، يمكنك التحقق من دورة برنامج Executive PG في علوم البيانات الذي تقدمه upGrad. تم تصميم الدورة التدريبية التي تبلغ مدتها 12 شهرًا للمهنيين المبتدئين (ذكورًا وإناثًا) في سن 21 إلى 45 عامًا وهي أول برنامج PGP معتمد من NASSCOM في الهند. مع أكثر من 400 ساعة من التعلم والخبرة العملية لأكثر من 14 أداة ولغة ، تم تصميم الدورة خصيصًا لتحقيق أحلامك. الاستفسارات المتعلقة بالدورة هي موضع ترحيب كبير.

متى تكون قائمة Python مفضلة لتخزين البيانات؟

تعتبر قائمة Python أفضل بنية بيانات لتخزين البيانات في السيناريوهات التالية:
1. يمكن استخدام القائمة لتخزين قيم مختلفة بأنواع بيانات مختلفة ويمكن الوصول إليها فقط من خلال المؤشرات الخاصة بكل منها.
2. عندما تحتاج إلى إجراء عمليات حسابية على العناصر ، يمكن استخدام قائمة لأنها تتيح لك تشغيل العناصر حسابيًا بشكل مباشر.
3. نظرًا لأنه يمكن تغيير حجم القائمة ، يمكن استخدامها لتخزين البيانات عندما لا تكون متأكدًا من عدد العناصر المراد تخزينها.
4. عناصر القائمة قابلة للتغيير بسهولة ويمكنها أيضًا تخزين العناصر المكررة ، على عكس المجموعة والقاموس.

ما هي مزايا قائمة الفهم على التكرار الحلقي؟

يوفر فهم القائمة العديد من المزايا الهامة على الحلقة. فيما يلي بعض إيجابيات القائمة الشاملة:
1. يعد فهم القائمة أسرع ومضغوطًا من الحلقة نظرًا لأنه يجمع كل العناصر أولاً ويدرجها معًا مرة واحدة.
2. يمكن عمل نفس الشيء الذي تفعله الحلقة في الكتلة في سطر واحد باستخدام فهم القائمة ، مما يجعل الكود أنظف وأكثر سهولة في الاستخدام.
3. يعد حل المصفوفة إلى متجه وترشيح القائمة بعضًا من أفضل الأمثلة حيث يمكن رؤية فهم القائمة وهو يتفوق على الحلقة.

اذكر الطرق المختلفة لإنشاء قائمة؟

يمكن إنشاء قائمة بايثون بعدة طرق مذكورة أدناه:
1. استخدام حلقات for : حلقة for هي الطريقة الأكثر عنصرية لإنشاء قائمة. يمكن إنشاء قائمة باستخدام حلقة for بثلاث طرق بسيطة:
أ. أنشئ قائمة فارغة.
ب. كرر على جميع العناصر التي سيتم إدراجها.
ج. قم بإلحاق كل عنصر في القائمة باستخدام الوظيفة append ().
2. استخدام map (): يمكن استخدام وظيفة map () في Python بدلاً من ذلك لإنشاء قائمة. تقبل هذه الوظيفة معلمتين:
أ. الوظيفة : الوظيفة التي تقوم الخريطة بتمرير كل منها قابل للتكرار.
ب. قابل للتكرار: العنصر أو القابل للتكرار المطلوب تعيينه.
3. استخدام List Comprehensions : هذه الطريقة هي الطريقة الأمثل من بين الطرق الثلاثة. بينما في الطرق المذكورة أعلاه ، يجب إنشاء قائمة فارغة أولاً ، تسمح لك list comprehensions بإدراج جميع العناصر في القائمة باستخدام سطر واحد.