لطفا صبرکنید...

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

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

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

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

تعریف تپل

برای تعریف یک تپل، از پرانتز استفاده می کنیم و مقادیر را با کاما از هم جدا می کنیم. به عنوان مثال، تپلی به نام my_tuple که شامل سه عنصر 10، "hello" و True است، به صورت زیر تعریف می شود:

Python
my_tuple = (10, "hello", True)

دسترسی به عناصر تپل

دسترسی با نمایه گذاری

رایج ترین روش دسترسی به عناصر تپل، استفاده از نمایه گذاری مربعی است. نمایه گذاری از 0 شروع می شود و می توان از اعداد منفی برای دسترسی به عناصر از انتهای تپل استفاده کرد. به عنوان مثال، تپلی به نام my_tuple که شامل سه عنصر 10، "hello" و True است، را در نظر بگیرید:

Python
my_tuple = (10, "hello", True)

برای دسترسی به عنصر اول تپل my_tuple، از کد زیر استفاده می کنیم:

Python
first_element = my_tuple[0]  # first_element = 10

برای دسترسی به عنصر دوم تپل my_tuple، از کد زیر استفاده می کنیم:

Python
second_element = my_tuple[1]  # second_element = "hello"

برای دسترسی به عنصر آخر تپل my_tuple، از کد زیر استفاده می کنیم:

Python
last_element = my_tuple[-1]  # last_element = True

دسترسی با برش

برش (Slicing) روشی برای استخراج زیرمجموعه ای از تپل است. برای برش تپل، از علامت دونقطه (:) استفاده می کنیم. به عنوان مثال، برای استخراج زیرمجموعه ای از تپل my_tuple که شامل دو عنصر اول می شود، از کد زیر استفاده می کنیم:

Python
first_two_elements = my_tuple[:2]  # first_two_elements = (10, "hello")

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

Python
second_and_third_elements = my_tuple[1:]  # second_and_third_elements = ("hello", True)

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

Python
first_and_last_elements = my_tuple[::2]  # first_and_last_elements = (10, True)

دسترسی با حلقه for

می توان با استفاده از حلقه for، روی عناصر تپل تکرار کرد و به هر عنصر دسترسی پیدا کرد. به عنوان مثال، برای چاپ تمام عناصر تپل my_tuple، از کد زیر استفاده می کنیم:

Python
for element in my_tuple:
    print(element)

دسترسی با تابع enumerate()

تابع enumerate() به شما امکان می دهد به طور همزمان به شاخص و عنصر تپل دسترسی پیدا کنید. به عنوان مثال، برای چاپ شاخص و عنصر هر عنصر در تپل my_tuple، از کد زیر استفاده می کنیم:

Python
for index, element in enumerate(my_tuple):
    print(f"index: {index}, element: {element}")

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

توجه: به دلیل غیرقابل تغییر بودن تپل ها، به روز رسانی مستقیم عناصر تپل در پایتون امکان پذیر نیست.

روش های به روز رسانی تپل

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

1. ایجاد تپل جدید

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

مثال:

Python
# تپل قبلی
original_tuple = (10, "hello", True)

# ایجاد تپل جدید با مقادیر به روز رسانی شده
updated_tuple = (20, "world", False)

2. استفاده از لیست

  • می توان تپل را به لیست تبدیل کرد، مقادیر لیست را به روز رسانی کرد و سپس لیست را به تپل جدید تبدیل کرد.

مثال:

Python
# تپل قبلی
original_tuple = (10, "hello", True)

# تبدیل تپل به لیست
updated_list = list(original_tuple)

# به روز رسانی مقادیر لیست
updated_list[0] = 20
updated_list[1] = "world"
updated_list[2] = False

# تبدیل لیست به تپل جدید
updated_tuple = tuple(updated_list)

3. استفاده از برش تپل

  • می توان از برش تپل برای جایگزینی بخشی از تپل با مقادیر جدید استفاده کرد.

مثال:

Python
# تپل قبلی
original_tuple = (10, "hello", True)

# جایگزینی عنصر دوم تپل با مقدار جدید
updated_tuple = original_tuple[:1] + ("world",) + original_tuple[2:]

4. استفاده از متغیرهای اختصاص داده شده

  • می توان از متغیرهای اختصاص داده شده برای به روز رسانی مقادیر تپل به طور غیر مستقیم استفاده کرد.

مثال:

Python
# تپل قبلی
original_tuple = (x, y, z)

# به روز رسانی مقادیر تپل با استفاده از متغیرهای اختصاص داده شده
x = 20
y = "world"
z = False
updated_tuple = (x, y, z)

گشایی تپل ها در پایتون

گشایی تپل با انتساب متغیر

رایج ترین روش گشایی تپل، استفاده از انتساب متغیر است. برای گشایی تپل به متغیرهای جداگانه، می توان از نمایه گذاری مربعی و علامت مساوی (=) استفاده کرد. به عنوان مثال، تپلی به نام my_tuple که شامل سه عنصر 10، "hello" و True است، را در نظر بگیرید:

Python
my_tuple = (10, "hello", True)

برای گشایی تپل my_tuple به سه متغیر به نام های x، y و z، از کد زیر استفاده می کنیم:

Python
x, y, z = my_tuple

در این کد، عنصر اول تپل (10) به متغیر x، عنصر دوم تپل ("hello") به متغیر y و عنصر سوم تپل (True) به متغیر z اختصاص داده می شود.

گشایی تپل با استفاده از حلقه for

می توان با استفاده از حلقه for، تپل را به طور مستقیم در حلقه تکرار کرد و مقادیر تپل را به متغیرهای جداگانه اختصاص داد. به عنوان مثال، برای گشایی تپل my_tuple به سه متغیر به نام های x، y و z با استفاده از حلقه for، از کد زیر استفاده می کنیم:

Python
for i, element in enumerate(my_tuple):
    if i == 0:
        x = element
    elif i == 1:
        y = element
    else:
        z = element

در این کد، حلقه for روی عناصر تپل my_tuple تکرار می شود و شاخص و عنصر هر عنصر در تپل به ترتیب به متغیرهای i و element اختصاص داده می شود. سپس، با استفاده از شرط if-elif-else، مقادیر تپل به متغیرهای x، y و z اختصاص داده می شوند.

گشایی تپل با استفاده از توابع * و **

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

  • تابع *: از تابع * برای گشایی تپل به لیست متغیرها استفاده می شود.
  • تابع **: از تابع ** برای گشایی تپل به دیکشنری از کلید و مقادیر استفاده می شود.

مثال:

Python
def my_function(x, y, z):
    print(f"x = {x}, y = {y}, z = {z}")

my_tuple = (10, "hello", True)

# گشایی تپل به لیست متغیرها با استفاده از تابع `*`
my_function(*my_tuple)

# گشایی تپل به دیکشنری با استفاده از تابع `**`
my_dict = dict(**my_tuple)
print(my_dict)

در این کد، تابع my_function سه آرگومان به نام های x، y و z دارد.

  • با استفاده از تابع *، تپل my_tuple به لیست متغیرها گشایی می شود و مقادیر تپل به آرگومان های تابع my_function اختصاص داده می شود.
  • با استفاده از تابع **، تپل my_tuple به دیکشنری از کلید و مقادیر گشایی می شود و عناصر تپل به عنوان کلید و مقادیر دیکشنری my_dict استفاده می شوند.

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

تکرار با حلقه for

رایج ترین روش تکرار در تپل ها، استفاده از حلقه for است. حلقه for روی هر عنصر در تپل به طور متوالی تکرار می شود و به شما امکان می دهد با هر عنصر کار کنید. به عنوان مثال، تپلی به نام my_tuple که شامل سه عنصر 10، "hello" و True است، را در نظر بگیرید:

Python
my_tuple = (10, "hello", True)

برای تکرار در تپل my_tuple و چاپ هر عنصر آن، از کد زیر استفاده می کنیم:

Python
for element in my_tuple:
    print(element)

تکرار با استفاده از نمایه گذاری مربعی

می توان با استفاده از نمایه گذاری مربعی، به طور مستقیم به عناصر تپل در حلقه دسترسی پیدا کرد. به عنوان مثال، برای تکرار در تپل my_tuple و چاپ شاخص و عنصر هر عنصر آن، از کد زیر استفاده می کنیم:

Python
for index, element in enumerate(my_tuple):
    print(f"index: {index}, element: {element}")

تکرار با استفاده از توابع * و **

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

  • تابع *: از تابع * برای گشایی تپل به لیست متغیرها استفاده می شود.
  • تابع **: از تابع ** برای گشایی تپل به دیکشنری از کلید و مقادیر استفاده می شود.

مثال:

Python
def my_function(x, y, z):
    print(f"x = {x}, y = {y}, z = {z}")

my_tuple = (10, "hello", True)

# تکرار در تپل و ارسال مقادیر به تابع با استفاده از تابع `*`
for element in my_tuple:
    my_function(*element)

# تکرار در تپل و ارسال مقادیر به دیکشنری با استفاده از تابع `**`
for element in my_tuple:
    my_dict = dict(**element)
    print(my_dict)

در این کد، تابع my_function سه آرگومان به نام های x، y و z دارد.

  • با استفاده از تابع *، تپل my_tuple به لیست متغیرها گشایی می شود و مقادیر تپل به آرگومان های تابع my_function در هر تکرار حلقه ارسال می شوند.
  • با استفاده از تابع **، تپل my_tuple به دیکشنری از کلید و مقادیر گشایی می شود و عناصر تپل در هر تکرار حلقه به عنوان کلید و مقادیر دیکشنری my_dict استفاده می شوند.

ترکیب تپل ها در پایتون

ترکیب تپل ها با عملگر +

رایج ترین روش ترکیب تپل ها، استفاده از عملگر + است. عملگر + دو تپل را با طول یکسان به هم می چسباند و تپلی جدید با عناصر هر دو تپل به ترتیب ایجاد می کند. به عنوان مثال، تپل های my_tuple1 و my_tuple2 را در نظر بگیرید:

Python
my_tuple1 = (10, "hello")
my_tuple2 = (True, 20)

برای ترکیب تپل های my_tuple1 و my_tuple2 با استفاده از عملگر +، از کد زیر استفاده می کنیم:

Python
combined_tuple = my_tuple1 + my_tuple2
print(combined_tuple)

در این کد، تپل combined_tuple با عناصر (10, "hello", True, 20) ایجاد می شود.

ترکیب تپل ها با استفاده از تابع tuple()

می توان از تابع tuple() برای ترکیب تپل ها با طول های مختلف استفاده کرد. تابع tuple() مقادیر ورودی را به یک تپل جدید تبدیل می کند. به عنوان مثال، برای ترکیب تپل های my_tuple1، my_tuple2 و یک عدد به نام my_number، از کد زیر استفاده می کنیم:

Python
combined_tuple = tuple(my_tuple1 + my_tuple2 + (my_number,))
print(combined_tuple)

در این کد، تپل combined_tuple با عناصر (10, "hello", True, 20, 30) ایجاد می شود.

ترکیب تپل ها با استفاده از لیست

می توان تپل ها را به لیست تبدیل کرد، مقادیر لیست را به دلخواه تغییر داد و سپس لیست را به تپل جدید تبدیل کرد. به عنوان مثال، برای ترکیب تپل های my_tuple1 و my_tuple2 با تغییر عنصر دوم تپل my_tuple2، از کد زیر استفاده می کنیم:

Python
my_list = list(my_tuple1) + list(my_tuple2)
my_list[1] = "world"
combined_tuple = tuple(my_list)
print(combined_tuple)

در این کد، لیست my_list با عناصر [10, 'hello', True, 20] ایجاد می شود. سپس، عنصر دوم لیست ("hello") به "world" تغییر داده می شود. در نهایت، لیست my_list به تپل combined_tuple با عناصر (10, "world", True, 20) تبدیل می شود.

توابع تپل در پایتون

توجه: به دلیل غیرقابل تغییر بودن تپل ها، توابع ارائه شده در این مقاله، مقادیر تپل های موجود را به طور مستقیم تغییر نمی دهند، بلکه تپل های جدیدی با مقادیر تغییر یافته یا بر اساس تپل های موجود ایجاد می کنند.

توابع رایج تپل ها:

  • +: برای ترکیب دو تپل با طول یکسان استفاده می شود.
  • tuple(): برای تبدیل مقادیر مختلف به تپل جدید استفاده می شود.
  • *: برای تکرار مقادیر تپل در آرگومان های تابع یا هنگام ایجاد دیکشنری استفاده می شود.
  • **: برای گشایی تپل به لیست متغیرها یا دیکشنری از کلید و مقادیر استفاده می شود.
  • in: برای بررسی وجود یک عنصر در تپل استفاده می شود.
  • len(): برای محاسبه طول تپل استفاده می شود.
  • index(): برای یافتن اولین موقعیت یک عنصر در تپل استفاده می شود.
  • count(): برای شمارش تعداد دفعات وجود یک عنصر در تپل استفاده می شود.
  • min(): برای یافتن کوچکترین عنصر در تپل استفاده می شود.
  • max(): برای یافتن بزرگترین عنصر در تپل استفاده می شود.
  • sorted(): برای مرتب کردن عناصر تپل استفاده می شود.
  • reversed(): برای معکوس کردن ترتیب عناصر تپل استفاده می شود.

مثال:

Python
# تپل های اولیه
my_tuple1 = (10, "hello", True)
my_tuple2 = (20, "world", False)

# ترکیب تپل ها
combined_tuple = my_tuple1 + my_tuple2
print(combined_tuple)

# تبدیل مقادیر به تپل
new_tuple = tuple([30, "Python", 50])
print(new_tuple)

# تکرار مقادیر تپل در آرگومان تابع
def my_function(x, y, z):
    print(f"x = {x}, y = {y}, z = {z}")

my_function(*my_tuple1)

# گشایی تپل به لیست متغیرها
x, y, z = my_tuple2
print(f"x = {x}, y = {y}, z = {z}")

# گشایی تپل به دیکشنری
my_dict = dict(my_tuple1)
print(my_dict)

# بررسی وجود عنصر در تپل
if "hello" in my_tuple1:
    print("The element 'hello' exists in the tuple")

# محاسبه طول تپل
print(len(my_tuple2))

# یافتن اولین موقعیت یک عنصر در تپل
print(my_tuple1.index("hello"))

# شمارش تعداد دفعات وجود یک عنصر در تپل
print(my_tuple2.count(False))

# یافتن کوچکترین عنصر در تپل
print(min(my_tuple1))

# یافتن بزرگترین عنصر در تپل
print(max(my_tuple2))

# مرتب کردن عناصر تپل
sorted_tuple = sorted(my_tuple1)
print(sorted_tuple)

# معکوس کردن ترتیب عناصر تپل
reversed_tuple = reversed(my_tuple2)
print(list(reversed_tuple))

عملیات روی تپل ها

می توان عملیات مختلفی روی تپل ها انجام داد، از جمله:

  • جمع کردن تپل ها: برای جمع کردن دو تپل با طول یکسان، از عملگر + استفاده می کنیم.
  • تکرار در تپل: می توان با استفاده از حلقه for، روی عناصر تپل تکرار کرد.
  • بررسی وجود عنصر در تپل: برای بررسی وجود یک عنصر خاص در تپل، از عملگر in استفاده می کنیم.
  • استخراج زیرمجموعه از تپل: برای استخراج زیرمجموعه ای از تپل، از برش استفاده می کنیم.
  • تبدیل تپل به لیست: برای تبدیل تپل به لیست، از تابع list() استفاده می کنیم.

کاربردهای تپل ها

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

  • ذخیره مقادیر ثابت: از تپل ها برای ذخیره مقادیر ثابت که در طول برنامه تغییر نمی کنند، استفاده می شود.
  • استفاده به عنوان کلید در دیکشنری ها: تپل ها می توانند به عنوان کلید در دیکشنری ها استفاده شوند.
  • بازگرداندن چند مقدار از یک تابع: تپل ها می توانند برای بازگرداندن چند مقدار از یک تابع استفاده شوند.

نتیجه گیری

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

منابع برای یادگیری بیشتر پایتون

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

codenevisam وب‌سایت

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