اشتمال قائمة (برمجة)

اشتمال قائمة (بالإنجليزية: list comprehension)‏ هو بناء نحوي متوفر في بعض لغات البرمجة لإنشاء قائمة بناءاً على القوائم الموجودة.[1] وهي تتبع الصيغة للتدوين الرياضي في منشئ المجموعة (اشتمال مجموعة) تمييزا لها عن استخدام دوال الخريطة الربطية map و الفلاتر filter.

هذه مقالة غير مراجعة. ينبغي أن يزال هذا القالب بعد أن يراجعها محرر مغاير للذي أنشأها؛ إذا لزم الأمر فيجب أن توسم المقالة بقوالب الصيانة المناسبة. يمكن أيضاً تقديم طلب لمراجعة المقالة في الصفحة المُخصصة لذلك. (يونيو 2020)

نظرة عامة

لنضع في الاعتبار المثال التالي في تدوين باني المجموعة.

أو غالبًا

يمكن قراءة هذا، " هي مجموعة كل الأرقام "مرتين " مثل ذلك الـ هو عنصر أو عضو في مجموعة الأعداد الطبيعية ( ) ، و تربيع أكبر من ".

أصغر رقم طبيعي، ، لا يستوفي الشرط (الشرط غير صحيح) لذلك غير مدرج في . الرقم الطبيعي التالي، 2 ، يستوفي الشرط () مثل كل رقم طبيعي آخر. وهكذا يتكون من بما أن المجموعة تتكون من جميع الأرقام " مرتين " ، يتم الحصول عليها من . بعبارة أخرى، S هي مجموعة جميع الأرقام الزوجية الأكبر من 2.

في هذه النسخة المدونة رياضياً من المثال السابق:

  • هو المتغير الذي يمثل أعضاء مجموعة الإدخال.
  • يمثل مجموعة المدخلات، والتي في هذا المثال هي مجموعة من الأعداد الطبيعية
  • هو تعبير أصلي يعمل كمرشح على أعضاء مجموعة الإدخال.
  • هو تعبير إخراج ينتج أعضاء المجموعة الجديدة من أعضاء مجموعة الإدخال التي تفي بالتعبير الأصلي.
  • تشير الأقواس إلى أن النتيجة هي مجموعة.
  • تتم قراءة الشريط العمودي على أنه "مثل هذا". يتم استخدام الشريط والفاصلة ":" بالتبادل.
  • تفصل الفواصل بين المسندات predicates ويمكن قراءتها كـ " و ".

يحتوي اشتمال القائمة على نفس الأجزاء النحوية لتمثيل التوليد من قائمة بالترتيب من قائمة الإدخال أو <i>المكرر</i> :

  • متغير يمثل أعضاء قائمة المدخلات.
  • قائمة الإدخال (أو المكرر).
  • تعبير أصلي اختياري.
  • وتعبير إخراج ينتج أعضاء قائمة الإخراج من أعضاء المدخلات القابلة للتكرار التي تستوفي المسند .

ترتيب توليد أعضاء قائمة المخرجات يعتمد على ترتيب العناصر في الإدخال.

في التركيب النحوي لاشتمال القائمة في لغة هاسكل، يتم كتابة انشاء باني المجموعة بشكل مشابه، وعلى النحو التالي:

s = [ 2*x | x <- [0..], x^2 > 3 ]

هنا، تمثل القائمة [0..] ، يمثل x^2>3 المسند، ويمثل 2*x تعبير الإخراج.

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

انظر أيضًا

  • عبارة SELECT مع عبارات FROM و WHERE في SQL

ملاحظات ومراجع

  1. "معلومات عن اشتمال قائمة (برمجة) على موقع academic.microsoft.com". academic.microsoft.com. مؤرشف من الأصل في 24 أكتوبر 2020. الوسيط |CitationClass= تم تجاهله (مساعدة)
    • قائمة الفهم في القاموس المجاني للحوسبة، المحرر دينيس هاو.
    • Trinder, Phil (1992). "الفهم، تدوين الاستعلام لـ DBPLs" . وقائع ورشة العمل الدولية الثالثة حول لغات برمجة قواعد البيانات: الأنواع بالجملة والبيانات الثابتة، Nafplion ، اليونان . ص.   55-68.
    • Wadler, Philip (1990). "فهم الموناد" . وقائع مؤتمر ACM 1990 حول LISP والبرمجة الوظيفية، نيس .
    • Wong, Limsoon (2000). "الشجاعة الوظيفية لنظام الاستعلام كليزلي" . وقائع المؤتمر الدولي الخامس ACM SIGPLAN حول البرمجة الوظيفية . المؤتمر الدولي للبرمجة الوظيفية. ص.   1-10.

    هاسكل

    OCaml

    بيثون

    الليسب المشتركة

    كلوجور

    اكسيوم

    روابط خارجية

    • بوابة علم الحاسوب
    This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.