اشتقاق القوائم (List Comprehensions)
يقدم اشتقاق القوائم طريقة موجزة وأنيقة لإنشاء قوائم بناءً على تسلسلات موجودة. وهي أسرع بشكل ملحوظ وأكثر قابلية للقراءة من حلقات for العادية لإنشاء القوائم.
حلقة for العادية مقابل الاشتقاق
الهدف: إنشاء قائمة بمربعات الأرقام من 0 إلى 4.
باستخدام حلقة عادية
python squares = [] for i in range(5): squares.append(i ** 2) print(squares) # [0, 1, 4, 9, 16]
باستخدام اشتقاق القوائم (موصى به)
الصيغة: [expression for item in iterable]
python squares_comp = [i ** 2 for i in range(5)] print(squares_comp) # [0, 1, 4, 9, 16]
مثال: تحويل النصوص
python names = ['alice', 'bob', 'charlie']
جعل الحرف الأول كبيراً لكل الأسماء
capitalized = [name.capitalize() for name in names] print(capitalized) # ['Alice', 'Bob', 'Charlie']