پرسش

تفاوت بین لیست‌ها و تاپل‌ها در پایتون چیه؟

What\'s the difference between lists and tuples?

لیست‌ها و تاپل‌ها هر دو از ساختارهای داده‌ای مهم در پایتون هستن. ولی تفاوت اصلی این دو چیه؟ کی باید از لیست استفاده کرد و کی از تاپل؟ و این تفاوت‌ها چه تاثیری روی عملکرد و کارایی برنامه‌ها داره؟

1403/06/05
پاسخ
رضا دولتی عاشق برنامه نویسی و هوش مصنوعی!
بیوگرافی رضا دولتی

لیست‌ها و تاپل‌ها هر دو مجموعه‌هایی هستند که می‌تونید مقادیر متعددی رو داخلشون ذخیره کنید. اما چند تفاوت مهم دارن:

  1. قابلیت تغییر: لیست‌ها قابل تغییر هستند، یعنی بعد از ایجادشون می‌تونید مقادیرشون رو تغییر بدید، اضافه یا حذف کنید. اما تاپل‌ها غیرقابل تغییر هستند؛ بعد از ایجاد، دیگه نمی‌تونید چیزی رو تغییر بدید.
  2. کارایی: تاپل‌ها به دلیل غیرقابل تغییر بودن، سریع‌تر و کم‌حجم‌تر از لیست‌ها هستن. اگه به مجموعه‌ای نیاز دارید که فقط خوانده بشه و تغییر نکنه، تاپل گزینه بهتریه.
  3. استفاده: برای داده‌هایی که ثابت هستند (مثل مختصات جغرافیایی)، از تاپل استفاده کنید. ولی برای داده‌هایی که ممکنه تغییر کنن (مثل لیست خرید)، لیست‌ها بهترند.

مثال کد:

# Creating a list
my_list = [1, 2, 3]
my_list[0] = 10  # This will work
# Creating a tuple
my_tuple = (1, 2, 3)
my_tuple[0] = 10  # This will raise an error

همونطور که می‌بینید، در لیست می‌تونید مقادیر رو تغییر بدید ولی در تاپل خیر. این تفاوت‌ها بهتون کمک می‌کنه که ساختار مناسب رو با توجه به نیازتون انتخاب کنید.

پاسخ: 1403/06/05
آخرین آپدیت: 1403/08/09