وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

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

0 6
زمان لازم برای مطالعه: 8 دقیقه


معرفی

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

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

روش ایجاد تاپل در پایتون

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


my_tuple = (1, 2, 3, 4, 5)


fruits = ('apple', 'banana', 'cherry')

از طرف دیگر، می توانید با استفاده از توکار یک تاپل ایجاد کنید tuple() تابعی که یک تکرارپذیر را به عنوان آرگومان می گیرد و یک تاپل برمی گرداند:


my_list = (1, 2, 3, 4, 5)
my_tuple = tuple(my_list)


my_string = "hello"
my_tuple = tuple(my_string)

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

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


my_tuple = ()

شایان ذکر است که حتی یک تاپل با یک عنصر باید دارای کاما انتهایی باشد:


my_tuple = (1,)

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

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

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

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

نمایه سازی

شما می توانید با استفاده از ایندکس به یک عنصر خاص از یک تاپل دسترسی داشته باشید. در پایتون، نمایه سازی در شروع می شود 0، بنابراین اولین عنصر یک تاپل دارای اندیس است 0، عنصر دوم دارای یک شاخص است 1، و غیره روی:


my_tuple = ('apple', 'banana', 'cherry')


print(my_tuple(0))  


print(my_tuple(2))  

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


print(my_tuple(3))  

راه جالب دیگری که می توانید به یک عنصر از تاپل دسترسی پیدا کنید استفاده از آن است شاخص های منفی. به این ترتیب، شما به طور موثر یک تاپل را به ترتیب معکوس، از آخرین عنصر به اول فهرست می‌کنید:


print(my_tuple(-1))  

توجه داشته باشید: نمایه سازی منفی با شروع می شود -1. آخرین عنصر توسط -1 شاخص، دوم به آخرین توسط -2، و غیره روی.

برش دادن

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


my_tuple = ('apple', 'banana', 'cherry', 'date', 'elderberry')


print(my_tuple(1:4))  

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


print(my_tuple(-3:))  

حلقه زدن از طریق تاپل ها

در نهایت، می‌توانید به سادگی با استفاده از a، تمام عناصر یک تاپل را حلقه کنید for حلقه:


my_tuple = ('apple', 'banana', 'cherry')


for fruit in my_tuple:
    print(fruit)

این به ما می دهد:

apple
banana
cherry

در بخش بعدی، تغییر ناپذیری تاپل ها و روش کار در اطراف آن را بررسی خواهیم کرد.

آیا می توانم تاپل ها را در پایتون اصلاح کنم؟

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


my_tuple = (1, 2, 3)


my_tuple(0) = 4  


my_tuple.append(4)  


del my_tuple(1)  

همانطور که می بینید، تلاش برای اصلاح یک تاپل، خطاهای مناسبی را ایجاد می کند – TypeError یا AttributeError. بنابراین اگر بخواهید محتویات یک تاپل را تغییر دهید، چه کاری می توانید انجام دهید؟

توجه داشته باشید: توجه به این نکته مهم است که همه روش‌های نشان داده شده در زیر به سادگی راه‌حل‌هایی هستند. هیچ راه مستقیمی برای اصلاح یک تاپل در پایتون وجود ندارد، و روش‌هایی که در اینجا مورد بحث قرار می‌گیرند، به‌طور موثر اشیاء جدیدی ایجاد می‌کنند که اصلاح تاپل‌ها را شبیه‌سازی می‌کنند.

پیشنهاد می‌کنیم بخوانید:  جستجوی خطی در پایتون

یک روش این است که تاپل را به یک نوع داده قابل تغییر تبدیل کنید، مانند یک لیست، تغییرات مورد نظر را انجام دهید و سپس آن را به یک تاپل تبدیل کنید:


my_list = list(my_tuple)


my_list(0) = 4


my_tuple = tuple(my_list)


print(my_tuple)  

این رویکرد به شما امکان می دهد تا در محتوای تاپل تغییراتی ایجاد کنید، اما با یک مبادله همراه است – تبدیل بین تاپل و لیست از نظر زمان و حافظه می تواند گران باشد. بنابراین از این تکنیک به اندازه کافی و فقط در مواقع ضروری استفاده کنید.

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

my_tuple = (1, 2, 3, 5)


new_tuple = (4,) + my_tuple(1:)


print(new_tuple)  

در این مثال، ما از الحاق تاپل برای ایجاد یک تاپل جدید که شامل عنصر اصلاح شده است استفاده کردیم (4,) به دنبال آن عناصر باقی مانده از تاپل اصلی. این روش کارایی کمتری نسبت به اصلاح یک لیست دارد، اما زمانی می تواند مفید باشد که شما فقط نیاز به ایجاد تعداد کمی اصلاح دارید.

به یاد داشته باشید که تاپل ها تغییر ناپذیر هستند و نمونه های نشان داده شده در این بخش فقط راه حل هایی (بسیار ناکارآمد) هستند، بنابراین همیشه هنگام اصلاح تاپل ها مراقب باشید. به طور خاص، اگر نیاز به تغییر یک تاپل در پایتون دارید، احتمالاً در وهله اول نباید از یک تاپل استفاده کنید.

از چه عملیاتی می توانم استفاده کنم روی تاپل ها در پایتون؟

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

الحاق تاپل

می توانید دو یا چند تاپل را با استفاده از + اپراتور. نتیجه یک تاپل جدید است که شامل تمام عناصر تاپل های اصلی است:


tuple1 = (1, 2, 3)
tuple2 = (4, 5, 6)
result = tuple1 + tuple2

print(result)  

تکرار تاپل

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


my_tuple = (1, 2, 3)
result = my_tuple * 3

print(result)  

عضویت تاپل

با استفاده از عبارت می توانید بررسی کنید که آیا عنصری در یک تاپل وجود دارد یا خیر in اپراتور. نتیجه یک مقدار بولی است (True یا False) نشان می دهد که آیا عنصر در تاپل است یا خیر:


my_tuple = (1, 2, 3)

print(2 in my_tuple)  
print(4 in my_tuple)  

مقایسه تاپل

شما می توانید دو تاپل را با استفاده از عملگرهای مقایسه استاندارد مقایسه کنید (<، <=، >، >=، ==، و !=). مقایسه به صورت عنصر انجام می شود و نتیجه یک مقدار بولی است که نشان می دهد آیا مقایسه درست است یا خیر:


tuple1 = (1, 2, 3)
tuple2 = (4, 5, 6)

print(tuple1 < tuple2)  
print(tuple1 == tuple2)  

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

می توانید با استفاده از عملگر انتساب یک تاپل را به چندین متغیر باز کنید (=). تعداد متغیرها باید با تعداد عناصر تاپل مطابقت داشته باشد، در غیر این صورت a ValueError مطرح خواهد شد. در اینجا یک مثال است:


my_tuple = (1, 2, 3)
a, b, c = my_tuple

print(a)  
print(b)  
print(c)  

روش های تاپل

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

پیشنهاد می‌کنیم بخوانید:  چگونه بررسی کنیم که آیا یک رشته در پایتون خالی است یا وجود ندارد

شمردن()

را count() متد تعداد دفعاتی که یک عنصر مشخص شده در یک تاپل ظاهر می شود را برمی گرداند:


my_tuple = (1, 2, 2, 3, 2)
count = my_tuple.count(2)

print(count)  

فهرست مطالب()

را index() متد شاخص اولین رخداد یک عنصر مشخص شده در یک تاپل را برمی گرداند. اگر عنصر پیدا نشد، الف ValueError ظهور کرده:


my_tuple = (1, 2, 3, 2, 4)
index = my_tuple.index(2)

print(index)  

len ()

را len() تابع تعداد عناصر یک تاپل را برمی گرداند:


my_tuple = (1, 2, 3, 4, 5)
length = len(my_tuple)

print(length)  

مرتب شده ()

را sorted() تابع یک لیست مرتب شده جدید حاوی تمام عناصر از تاپل را برمی گرداند:


my_tuple = (3, 1, 4, 1, 5, 9, 2, 6, 5)
sorted_tuple = tuple(sorted(my_tuple))

print(sorted_tuple)  

توجه داشته باشید: را sorted() تابع لیستی را برمی گرداند، که سپس با استفاده از عبارت به یک تاپل تبدیل می شود tuple() سازنده

min() و max()

را min() و max() توابع کوچکترین و بزرگترین عناصر یک تاپل را به ترتیب برمی گرداند:


my_tuple = (3, 1, 4, 1, 5, 9, 2, 6, 5)
min_element = min(my_tuple)
max_element = max(my_tuple)

print(min_element)  
print(max_element)  

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

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

یکی از ویژگی‌های جالب تاپل‌ها در پایتون که در مورد آن صحبت کردیم این است که می‌توانید آن‌ها را در چندین متغیر به طور همزمان «باز کردن» کنید. این بدان معناست که شما می توانید هر عنصر از یک تاپل را به یک متغیر جداگانه در یک خط کد اختصاص دهید. این می تواند یک راه راحت برای کار با تاپل ها در زمانی که نیاز به دسترسی به عناصر جداگانه یا انجام عملیات دارید، باشد روی آنها را جداگانه

بیایید مثال قسمت قبل را یادآوری کنیم:


my_tuple = (1, 2, 3)
a, b, c = my_tuple

print(a)  
print(b)  
print(c)  

در این مثال یک تاپل ایجاد کردیم my_tuple با سه عنصر سپس، با اختصاص دادن هر عنصر به یک متغیر جداگانه، تاپل را “باز کردن” می کنیم a، b، و c در یک خط کد در نهایت، ما تأیید کردیم که تاپل به درستی باز شده است.

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


a = 5
b = 10

print("Before swapping:")
print("a =", a)
print("b =", b)


a, b = b, a

print("After swapping:")
print("a =", a)
print("b =", b)

خروجی:

Before swapping:
a = 5
b = 10
After swapping:
a = 10
b = 5

در اینجا، ما از باز کردن بسته بندی تاپل استفاده می کنیم swap ارزش های a و b. بیان a, b = b, a یک تاپل با مقادیر از ایجاد می کند b و a، که سپس در متغیرها باز می شود a و b در یک خط کد

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


my_tuple = (1, 2, 3, 4, 5)
a, b, *c = my_tuple

print(a)  
print(b)  
print(c)  

ما یک تاپل داریم my_tuple با پنج عنصر برای تخصیص دو عنصر اول به متغیرها از تاپل باز کردن بسته بندی استفاده می کنیم a و b، و عناصر باقیمانده به متغیر c با استفاده از * اپراتور. را * عملگر برای “باز کردن” عناصر باقیمانده از تاپل به یک تاپل جدید استفاده می شود که به متغیر اختصاص داده می شود. c.

این نیز یک روش جالب برای برگرداندن چندین مقدار/متغیر از یک تابع است که به تماس‌گیرنده اجازه می‌دهد تا تصمیم بگیرد که چگونه مقادیر بازگشتی را باز کرده و از انتهای آنها تخصیص دهد.

نتیجه

تاپل ها یکی از انواع داده های اساسی در پایتون هستند. آنها به شما اجازه می دهند مجموعه ای از مقادیر را در یک واحد ذخیره کنید container. آنها شبیه به لیست ها هستند، اما با چند تفاوت مهم – تاپل ها تغییر ناپذیر هستند، و معمولاً برای ذخیره مجموعه ای ثابت از مقادیر که به هم تعلق دارند استفاده می شود.

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

تاپل ها ممکن است پر زرق و برق ترین نوع داده در پایتون نباشند، اما مطمئناً زمانی مؤثر هستند که بدانید چگونه و چه زمانی از آنها استفاده کنید. بنابراین دفعه بعد که کار می کنید روی یک پروژه پایتون، به یاد داشته باشید که تاپل ها را امتحان کنید. چه کسی می داند، آنها ممکن است به نوع داده مورد علاقه جدید شما تبدیل شوند!

(برچسب‌ها به ترجمه)# python



منتشر شده در 1403-01-01 15:10:05

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید