القوائم والصفوف
Lists and Tuples
التسلسلات المرتبة في Python: القائمة القابلة للتعديل والصف غير القابل للتعديل.
القوائم
scores = [0.82, 0.91, 0.77]
scores.append(0.88) # إضافة في النهاية
scores.insert(0, 0.5) # إضافة في موقع محدد
scores.remove(0.77) # حذف قيمة
last = scores.pop() # حذف آخر عنصر وإعادته
scores.sort() # ترتيب تصاعدي في المكان
len(scores) # عدد العناصرالفهرسة والتقطيع
x = [10, 20, 30, 40, 50]
x[0] # 10
x[-1] # 50
x[1:4] # [20, 30, 40]
x[:2] # [10, 20]
x[::2] # [10, 30, 50]
x[::-1] # عكس القائمةالفهرس يبدأ من الصفر، ونهاية التقطيع غير مشمولة.
النسخ مقابل الإشارة
a = [1, 2, 3]
b = a # b يشير إلى القائمة نفسها
b.append(4)
print(a) # [1, 2, 3, 4]
c = a.copy() # نسخة مستقلة (سطحية)الصفوف
shape = (224, 224, 3) # أبعاد صورة
h, w, c = shape # فك التعبئة (unpacking)
def min_max(values):
return min(values), max(values) # تعيد tuple
lo, hi = min_max([3, 9, 1])الصفوف أخف من القوائم، ويمكن استخدامها مفاتيح في القواميس لأنها غير قابلة للتعديل (إذا كانت عناصرها كذلك).
دوال مفيدة
sum وmin وmax وsorted (تعيد قائمة جديدة) وany وall. مثال: sorted(scores, reverse=True)[:3] تعيد أعلى ثلاث درجات.
مصطلحات الدرس
- التقطيع Slicing
- استخراج جزء من تسلسل بالصيغة [start:stop:step].
- الصف Tuple
- تسلسل مرتب غير قابل للتعديل يُكتب بين قوسين عاديين.
- القائمة List
- تسلسل مرتب وقابل للتعديل من العناصر يُكتب بين قوسين مربعين.
الملخص
القائمة list تسلسل مرتب قابل للتعديل يدعم الإضافة والحذف والترتيب والتقطيع، والصف tuple تسلسل مرتب غير قابل للتعديل يُستخدم للقيم الثابتة ولإعادة أكثر من قيمة من دالة. كلاهما يُفهرس من الصفر ويدعم الفهارس السالبة والتقطيع.
أسئلة مراجعة
-
ما ناتج [10, 20, 30, 40][1:3]؟
[20, 30].
-
متى تستخدم tuple بدلاً من list؟
عندما تكون القيم ثابتة لا ينبغي تعديلها، مثل أبعاد صورة أو إحداثيات، أو كمفتاح في قاموس.
المصادر والمراجع
إكمال الدرس
أكملت كل دروس المسار! يمكنك الآن طلب شهادة إكمال المسار.
اطلب الشهادة