Python

لیست

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

لیست ها در پایتون ساختارهای داده ای قدرتمند و پویایی هستند که برای ذخیره سازی، سازماندهی و دستکاری مجموعه ای از مقادیر به طور کارآمد مورد استفاده قرار می گیرند. در این راهنمای جامع، به بررسی کامل عملیات و کاربردهای مختلف لیست ها در زبان برنامه نویسی پایتون می پردازیم.

۱. ایجاد لیست:

  • ایجاد لیست خالی:
Python
my_list = []
  • ایجاد لیست با مقادیر اولیه:
Python
numbers = [۱, ۲, ۳, ۴, ۵]
fruits = ["سیب", "موز", "انگور"]
mixed_data = [True, ۱۰.۵, "سلام"]

۲. دسترسی به عناصر :

  • با استفاده از شاخص می توان به هر عنصر لیست دسترسی پیدا کرد. شاخص گذاری از ۰ شروع می شود و می توان با استفاده از مقادیر منفی به عناصر از انتهای لیست نیز دسترسی داشت.
Python
# دسترسی به اولین عنصر
first_element = numbers[۰]  # مقدار first_element برابر با ۱ خواهد بود

# دسترسی به آخرین عنصر
last_element = numbers[-۱]  # مقدار last_element برابر با ۵ خواهد بود

# دسترسی به عنصر دوم از انتهای لیست
second_last_element = numbers[-۲]  # مقدار second_last_element برابر با ۴ خواهد بود

۳. تغییر مقادیر عناصر :

می توان با استفاده از شاخص و مقدار جدید، مقادیر عناصر لیست را به روز رسانی کرد.

Python
# تغییر مقدار عنصر سوم لیست numbers به ۲۰
numbers[۲] = ۲۰

# تغییر عنصر اول لیست mixed_data به "پایتون"
mixed_data[۰] = "پایتون"

۴. افزودن عناصر به :

برای اضافه کردن عناصر جدید به لیست، می توان از متدهای append() و insert() استفاده کرد.

  • append(): عنصر جدید را به انتهای لیست اضافه می کند.
Python
numbers.append(۶)  # لیست numbers به صورت [۱, ۲, ۲۰, ۴, ۵, ۶, ۶]
در خواهد آمد
  • insert(): عنصر جدید را در موقعیت دلخواه در لیست درج می کند.
Python
mixed_data.insert(۱, "داده جدید")  # ==>   ['پایتون', 'داده جدید', ۱۰.۵, 'سلام'] 

۵. حذف عناصر  :

برای حذف عناصر از لیست، می توان از متد remove() یا عملگر del استفاده کرد.

  • remove(): عنصری با مقدار مشخص را از لیست حذف می کند.
Python
numbers.remove(۳)  # لیست numbers به صورت [۱, ۲, ۴, ۵, ۶] در خواهد آمد
  • del: عنصر با شاخص مشخص را از لیست حذف می کند.
Python
del mixed_data[۲]  # لیست mixed_data به صورت ["پایتون", "داده جدید", ۱۰.۵, "سلام"] در خواهد آمد

۶. پیمایش در لیست:

برای پیمایش در لیست و انجام عملیات بر روی هر عنصر، می توان از حلقه های for استفاده کرد.

Python
# دو برابر کردن هر عدد در لیست numbers
for number in numbers:
  print(number * ۲)

# چاپ نوع هر عنصر در لیست mixed_data
for item in mixed_data:
  print(type(item))

۷. ترکیب لیست ها:

می توان با استفاده از عملگر + یا متد extend() لیست ها را با یکدیگر ترکیب کرد.

  • +: لیست ها را به صورت یک لیست جدید با عناصر اولی از لیست سمت چپ و سپس عناصر لیست سمت راست ترکیب می کند.
Python
list1 = [۱, ۲, ۳]
list2 = [۴, ۵, ۶]

combined_list = list1 + list2  # combined_list: [1, 2, 3, 4, 5, 6]
  • extend()

    متد extend() در پایتون برای الحاق عناصر یک iterabe (مانند لیست، تاپل یا رشته) به انتهای لیست دیگر استفاده می‌شود. این متد، لیست مقصد را تغییر می‌دهد و لیست جدیدی را برنمی‌گرداند.

    نحوه عملکرد:

    فرض کنید لیست my_list1 شامل مقادیر [۱, ۲, ۳] و لیست my_list2 شامل مقادیر [۴, ۵, ۶] باشد.

    با اجرای دستور my_list1.extend(my_list2), لیست my_list1 به صورت [۱, ۲, ۳, ۴, ۵, ۶] تغییر خواهد یافت.

    تفاوت با append():

    • append() تنها یک عنصر را به انتهای لیست اضافه می‌کند، در حالی که extend() تمام عناصر یک iterable را الحاق می‌کند.

    مثال‌های کاربردی:

    ۱. الحاق دو لیست:

    Python
    my_list1 = [۱, ۲, ۳]
    my_list2 = [۴, ۵, ۶]
    
    my_list1.extend(my_list2)
    print(my_list1)  # خروجی: [۱, ۲, ۳, ۴, ۵, ۶]
    

    ۲. الحاق عناصر رشته:

    Python
    my_list = [۱, ۲, ۳]
    my_string = "Hello"
    
    my_list.extend(my_string)
    print(my_list)  # خروجی: [۱, ۲, ۳, 'H', 'e', 'l', 'l', 'o']
    

    ۳. الحاق تاپل:

    Python
    my_list = [۱۰, ۲۰, ۳۰]
    my_tuple = (۴۰, ۵۰)
    
    my_list.extend(my_tuple)
    print(my_list)  # خروجی: [۱۰, ۲۰, ۳۰, ۴۰, ۵۰]
    

    ۴. الحاق لیست به لیست تودرتو:

    Python
    parent_list = [[۱, ۲], [۳, ۴]]
    child_list = [۵, ۶]
    
    parent_list[۰].extend(child_list)
    print(parent_list)  # خروجی: [[۱, ۲, ۵, ۶], [۳, ۴]]
    

    ۵. الحاق عناصر با شرط:

    Python
    numbers = [۱, ۲, ۳, ۴, ۵, ۶]
    even_numbers = [number for number in numbers if number % ۲ == ۰]
    
    numbers.extend(even_numbers)
    print(numbers)  # خروجی: [۱, ۲, ۳, ۴, ۵, ۶, ۲, ۴, ۶]
    

    نکات:

    • extend() در جاهایی که می‌خواهیم تمام عناصر یک iterable را به طور مستقیم به انتهای لیست اضافه کنیم، کاربرد دارد.
    • اگر به دنبال الحاق یک عنصر واحد هستید، از append() استفاده کنید.
    • extend() لیست مقصد را تغییر می‌دهد و لیست جدیدی برنمی‌گرداند.
    • می توانید از extend() برای الحاق عناصر انواع مختلف داده (مانند لیست، تاپل و رشته) استفاده کنید.

     

۸. بررسی عضویت در لیست:

می توان با استفاده از عملگر in بررسی کرد که آیا عنصری خاص در لیست وجود دارد یا خیر.

Python
if "سیب" in fruits:
  print("سیب در لیست میوه ها موجود است")
else:
  print("سیب در لیست میوه ها موجود نیست")

۹. یافتن طول :

برای یافتن تعداد عناصر موجود در لیست، می توان از تابع len() استفاده کرد.

Python
list_length = len(mixed_data)
print(f"طول لیست mixed_data برابر با {list_length} است")

۱۰. کپی کردن :

برای ایجاد کپی از لیست، می توان از روش های زیر استفاده کرد:

  • ایجاد کپی با برش ([:]):
Python
list_copy = mixed_data[:]  # لیست copy به طور کامل محتوای mixed_data را کپی می کند
  • استفاده از تابع copy() از ماژول copy:
Python
import copy

copied_list = copy.copy(mixed_data)  # لیست copied_list به طور کامل محتوای mixed_data را کپی می کند

۱۱. مرتب سازی :

می توان با استفاده از متد sort() لیست را به ترتیب صعودی یا نزولی مرتب کرد.

Python
numbers.sort()  # لیست numbers به صورت [۱, ۲, ۳, ۴, ۵, ۶] مرتب می شود

numbers.sort(reverse=True)  # لیست numbers به صورت [۶, ۵, ۴, ۳, ۲, ۱] (نزولی) مرتب می شود

۱۲. معکوس کردن :

می توان با استفاده از متد reverse() ترتیب عناصر لیست را معکوس کرد.

Python
fruits.reverse()  # لیست fruits به صورت ["انگور", "موز", "سیب"] در خواهد آمد

۱۳. حذف عناصر تکراری :

برای حذف عناصر تکراری از لیست، می توان از مجموعه ها (set) به عنوان واسطه استفاده کرد.

Python
unique_numbers = list(set(numbers))  # لیست unique_numbers فقط شامل مقادیر منحصربفرد لیست numbers خواهد بود

۱۴. کار با زیر لیست ها:

می توان با استفاده از برش ([:]) زیر لیست هایی از لیست اصلی استخراج کرد.

Python
first_three = numbers[:۳]  # زیر لیست first_three شامل سه عنصر اول لیست numbers خواهد بود (یعنی [۱, ۲, ۳])

last_two = mixed_data[-۲:]   # زیر لیست last_two شامل دو عنصر آخر لیست mixed_data خواهد بود (یعنی [۱۰.۵, "سلام"])

۱۵. جمع آوری عناصر از لیست بر اساس شرط:

می توان با استفاده از لیست comprehension یا متد filter() عناصری از لیست را که شرط خاصی را دارند، در یک لیست جدید جمع آوری کرد.

Python
even_numbers = [number for number in numbers if number % ۲ == ۰]  # لیست even_numbers شامل تمام اعداد زوج در لیست numbers خواهد بود

positive_numbers = list(filter(lambda x: x > ۰, numbers))  # لیست positive_numbers شامل تمام اعداد بزرگتر از صفر در لیست numbers خواهد بود

۱۶. کاربردهای لیست در پایتون:

لیست ها در طیف گسترده ای از برنامه های پایتون کاربرد دارند، از جمله:

  • ذخیره سازی مجموعه داده ها
  • مدل سازی روابط بین داده ها
  • تجزیه و تحلیل داده ها
  • الگوریتم ها و ساختارهای داده
  • توسعه وب
  • اسکریپت نویسی اتوماسیون
  • یادگیری ماشین
  • هوش مصنوعی

۱۷. منابع برای مطالعه بیشتر:

۵/۵ ( ۱ امتیاز )
نمایش بیشتر

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا