دنبالهای که میشود عوضش کرد
تاپل تغییرناپذیر بود؛ لیست همان است با یک تفاوت بزرگ: میتوانی عوضش کنی:
grades = [18, 14, 20, 10]
grades[2] = 19 # تغییر یک خانه (اندیس از صفر)
grades.append(16) # افزودن به انتها
print(grades) # [18, 14, 19, 10, 16]
print(len(grades)) # 5
grades[2] = 19لیست را در جای خودش عوض میکند؛ لیست جدیدی ساخته نمیشود. به این «جهش» (mutation) میگویند.append(x)یک عنصر به انتها اضافه میکند. اگر به آن یک لیست بدهی، کل آن لیست میشود یک خانه؛ برای چسباندن عنصرها یکییکی، ازextendیا+استفاده کن.- اندیسِ ناموجود (
grades[9]) خطایIndexErrorمیدهد؛ برای همین خانهٔ تازه را باappendمیسازیم، نه با اندیسدهی.
الگوی پیمایش هم همان جمعزدنِ همیشگی است:
total = 0
for g in grades:
total = total + g
print(total / len(grades))
چرا append و نه grades[4] = 16؟ چون آن خانه هنوز وجود ندارد. درس کامل لیست مثال لیستِ لیستها و لیستی از تاپلها را هم دارد.