متدهای لیست در پایتون

متدهای پرکاربرد لیست: sort، reverse، index، count، copy و توابع مرتبط

متدهای مهم لیست

sort() — مرتب‌سازی

لیست را در همانجا (in-place) مرتب می‌کند:

numbers = [5, 2, 8, 1, 9, 3]
numbers.sort()
print(numbers)  # [1, 2, 3, 5, 8, 9]

# نزولی
numbers.sort(reverse=True)
print(numbers)  # [9, 8, 5, 3, 2, 1]

مرتب‌سازی رشته‌ها

names = ["زهرا", "علی", "مریم", "حسن"]
names.sort()
print(names)  # بر اساس حروف الفبا

مرتب‌سازی با کلید

# بر اساس طول رشته
words = ["پایتون", "کد", "برنامه", "جا"]
words.sort(key=len)
print(words)  # ['کد', 'جا', 'پایتون', 'برنامه']

sorted() — مرتب‌سازی بدون تغییر

برخلاف sort()، تابع sorted() لیست جدید می‌دهد و اصلی را تغییر نمی‌دهد:

numbers = [3, 1, 4, 1, 5]
sorted_numbers = sorted(numbers)
print(numbers)         # [3, 1, 4, 1, 5] (تغییر نکرد)
print(sorted_numbers)  # [1, 1, 3, 4, 5]

reverse() — معکوس کردن

numbers = [1, 2, 3, 4, 5]
numbers.reverse()
print(numbers)  # [5, 4, 3, 2, 1]

index() — پیدا کردن ایندکس

fruits = ["سیب", "موز", "پرتقال"]
pos = fruits.index("موز")
print(pos)  # 1

count() — شمارش تکرار

numbers = [1, 2, 2, 3, 3, 3, 4]
print(numbers.count(3))  # 3

copy() — کپی لیست

original = [1, 2, 3]
copy = original.copy()
copy.append(4)
print(original)  # [1, 2, 3] (تغییر نکرد)
print(copy)      # [1, 2, 3, 4]

توابع مفید روی لیست

تابعتوضیحمثال
len()طولlen([1,2,3]) → 3
sum()مجموعsum([1,2,3]) → 6
max()بزرگ‌ترینmax([1,5,3]) → 5
min()کوچک‌ترینmin([1,5,3]) → 1
sorted()مرتب‌شدهsorted([3,1,2])
any()آیا یکی True است؟any([0,1,0]) → True
all()آیا همه True؟all([1,1,0]) → False
numbers = [10, 20, 30, 40, 50]
print(f"طول: {len(numbers)}")
print(f"مجموع: {sum(numbers)}")
print(f"بزرگ‌ترین: {max(numbers)}")
print(f"کوچک‌ترین: {min(numbers)}")
print(f"میانگین: {sum(numbers) / len(numbers)}")

List Comprehension (مختصر)

روشی کوتاه برای ساخت لیست — در مبحث جداگانه مفصل توضیح می‌دهیم:

# روش سنتی
squares = []
for x in range(5):
    squares.append(x ** 2)

# با comprehension
squares = [x ** 2 for x in range(5)]
print(squares)  # [0, 1, 4, 9, 16]

تبدیل به لیست

# رشته به لیست
letters = list("Python")
print(letters)  # ['P', 'y', 't', 'h', 'o', 'n']

# تاپل به لیست
t = (1, 2, 3)
l = list(t)
print(l)  # [1, 2, 3]

خلاصه متدها

متدتوضیح
sort()مرتب‌سازی درجا
reverse()معکوس کردن
index(x)ایندکس x
count(x)تعداد تکرار x
copy()کپی لیست
clear()خالی کردن

این مبحث بخشی از دوره آموزش کامل پایتون است.

ابزارهای مرتبط