TUPLE در پایتون، Packing ،Unpacking، مقایسه، برش، حذف، کلید
تاپل دقیقا مانند لیستی دنباله دار از اشیاء پایتون است. تفاوت لیست و تاپل در این است که لیست در براکت های مربع تعریف می شود و قابل تغییر است اما تاپل در پرانتز تعریف می شود و قابل تغییر نیست. با این حال ، می توانید بخش هایی از تاپل های موجود را بردارید تا بتوانید تاپل های جدیدی ایجاد کنید.
ساختار تاپل
Tup = (‘Jan’,’feb’,’march’)
برای نوشتن تاپل خالی ، باید بین پرانتز چیزی ننویسید.
tup1 = ();
برای نوشتن تاپل برای یک مقدار واحد ، باید حتما کاما درج کنید ، حتی اگر یک مقدار واحد نیز وجود داشته باشد. همچنین در انتهای آن مانند شکل زیر باید ; بگذارید.
Tup1 = (50,);
شاخص های تاپل ها از ۰ شروع می شوند و می توان آن ها را متصل کرد ، برش داد و…
در این آموزش می آموزیم:
- Packing و Unpacking
- مقایسه تاپل ها
- استفاده از تاپل ها به عنوان کلید در فرهنگ لغات
- حذف تاپل ها
- برش تاپل
- توابع ساخته شده با تاپل
- مزایای استفاده از تاپل به جای لیست
اختصاص در تاپل
پایتون دارای ویژگی اختصاص تاپل است که به شما امکان می دهد بیش از یک متغیر را همزمان به آن اختصاص دهید. در اینجا ، ما tuple 1 را با اطلاعات مربوط به اشخاص مانند نام ، نام خانوادگی ، سال تولد ، و غیره و tuple 2 را با مقادیر موجود در آن مانند شماره (۱,۲,۳,…,۷) اختصاص داده ایم.
مثلا،
(name, surname, birth year, favorite movie and year, profession, birthplace) = Robert
tup1 = (‘Robert’, ‘Carlos’,’1965′,’Terminator 1995′, ‘Actor’,’Florida’);
tup2 = (1,2,3,4,5,6,7);
print(tup1[0])
print(tup2[1:4])
- Tuple 1 شامل لیستی از اطلاعات رابرت است.
- Tuple 2 شامل لیست شماره های موجود در آن است.
- ما مقدار خانه [۰] را از tuple 1 و خانه های بین ۱تا۴ را از tuple 2 فرا می خوانیم.
- کد را اجرا کنید – برای tuple 1 نام رابرت، برای tuple 2 مقادیر ۲، ۳ و ۴ را خروجی می دهد.
Packing و Unpacking
در Packing ، ما مقدار را در یک tuple جدید قرار می دهیم در حالی که در Unpacking ، آن مقادیر را دوباره در متغیرها استخراج می کنیم.
x = (“Guru99”, 20, “Education”) # tuple packing
(company, emp, profile) = x # tuple unpacking
print(company)
print(emp)
print(profile)
مقایسه تاپل ها
عملگر مقایسه در پایتون می تواند با تاپل کار کند.
مقایسه با عنصر اول هر تاپل شروع می شود. اگر مقایسه آن ها با = ، < یا > بی نتیجه باشد ، با عنصر دوم و غیره ادامه می یابد.
مقایسه با اولین عنصر از هر یک از تاپل ها شروع می شود.
مورد۱:
a=(5,6)
b=(1,4)
if (a>b):print(“a is bigger”)
else: print(“b is bigger”)
مورد۲:
a=(5,6)
b=(5,4)
if (a>b):print(“a is bigger”)
else: print (“b is bigger”)
مورد۳:
a=(5,6)
b=(6,4)
if (a>b):print(“a is bigger”)
else: print(“b is bigger”)
مورد۱ : مقایسه با عنصر اول هر تاپل شروع می شود. در این حالت ۵> 1 ، بنابراین خروجی برابر است با: a بزرگتر است
مورد ۲ : مقایسه با عنصر اول هر تاپل شروع می شود. در این حالت ۵> 5 که نتیجه ای ندارد. بنابراین با عنصر بعدی ادامه می یابد. ۶> 4 ، بنابراین خروجی برابر است با: a بزرگتر است
مورد ۳ : مقایسه با عنصر اول هر تاپل شروع می شود. در این حالت ۵> 6 که غلط است. بنابراین قسمت else اجرا می شود یعنی: “b بزرگتر است”.
استفاده از تاپل ها به عنوان کلید در فرهنگ لغات
از آنجا که تاپل ها hashable هستند و لیست ها نه، در صورت نیاز به ایجاد کلید برای استفاده در فرهنگ لغت ، باید از تاپل به عنوان کلید استفاده کنیم.
مثال: می خواهیم فهرست تلفن ایجاد کنیم که شامل نقشه ، نام ، نام خانوادگی ، شماره تلفن و غیره باشد. فرض می کنیم متغیرهای last و first را تعریف کردیم. سپس می توانیم بیانیه واگذاری فرهنگ لغت را مانند شکل زیر بنویسیم:
directory[last,first] = number
عبارات داخل براکت ها، تاپل هستند. برای پیمایش فرهنگ لغت می توانیم از تخصیص تاپل در حلقه for استفاده کنیم.
for last, first in directory:
print first, last, directory[last, first]
این حلقه کلید های موجود در فرهنگ لغت که نوعی تاپل هستند ، پیمایش می کند. عناصر هر تاپل را به last و first اختصاص می دهد و سپس نام و شماره تلفن مربوطه را چاپ می کند.
تاپل ها و فرهنگ لغت
فرهنگ لغت می تواند با فراخوانی آیتم ها ، جایی که هر تاپل یک جفت ارزش کلیدی است ، لیست تاپل ها را برگرداند.
a = {‘x’:100, ‘y’:200}
b = list(a.items())
print(b)
حذف تاپل ها
تاپل ها تغییر ناپذیر هستند و نمی توانند حذف شوند ، اما حذف تاپل به طور کامل با استفاده از کلید واژه “del” امکان پذیر است.
برش تاپل
برای واکشی مجموعه های خاص از عناصر فرعی از تاپل یا لیست ، ما از این عملکرد منحصر به فرد به نام برش(slicing) استفاده می کنیم. برش نه تنها برای تاپل بلکه برای آرایه و لیست نیز کاربرد دارد.
x = (“a”, “b”,”c”, “d”, “e”)
print(x[2:4])
خروجی این کد (“”c، d””) خواهد بود.
در اینجا مثال پایتون ۲ آمده است
tup1 = (‘Robert’, ‘Carlos’,’1965′,’Terminator 1995′, ‘Actor’,’Florida’);
tup2 = (1,2,3,4,5,6,7);
print tup1[0]
print tup2[1:4]
#Packing and Unpacking
x = (“Guru99”, 20, “Education”) # tuple packing
(company, emp, profile) = x # tuple unpacking
print company
print emp
print profile
#Comparing tuples
#case 1
a=(5,6)
b=(1,4)
if (a>b):print “a is bigger”
else: print “b is bigger”
#case 2
a=(5,6)
b=(5,4)
if (a>b):print “a is bigger”
else: print “b is bigger”
#case 3
a=(5,6)
b=(6,4)
if (a>b):print “a is bigger”
else: print “b is bigger”
#Tuples and dictionary
a = {‘x’:100, ‘y’:200}
b = a.items()
print b
#Slicing of Tuple
x = (“a”, “b”,”c”, “d”, “e”)
print x[2:4]
توابع ساخته شده با تاپل
برای انجام وظایف متفاوت ، تاپل به شما امکان می دهد از بسیاری از توابع داخلی مانند () all() ، any() ، enumerate()، min() ،max()، sorted () ، len () ، tupleو غیره استفاده کنید.
مزایای استفاده از تاپل به جای لیست
- حرکت از طریق تاپل سریعتر از لیست است ، زیرا نوسانات تغییر ناپذیر هستند.
- تاپل هایی که از عناصر تغییرناپذیر تشکیل شده اند می توانند به عنوان کلید واژه نامه استفاده شوند که با لیست امکان پذیر نیست.
- اگر اطلاعات غیرقابل تغییر دارید ، اجرای آن به صورت تاپل تضمین می کند که از آن محافظت شود.
خلاصه:
پایتون دارای ویژگی اختصاصی تاپل است که به شما امکان اختصاص همزمان بیش از یک متغیر را می دهد.
- Packing و Unpacking تاپل ها
- در Packing ، ما مقدار را در یک تاپل جدید قرار می دهیم در حالی که در Unpacking ، آن مقادیر را دوباره در متغیرها استخراج می کنیم.
- یک عملگر مقایسه در پایتون می تواند با تاپل کار کند.
- استفاده از تاپل ها به عنوان کلید در فرهنگ لغت ها
- تاپل ها hashable هستند ولی لیست ها نیستند.
- اگر نیاز به ایجاد کلید برای استفاده در فرهنگ لغت دارید باید از تاپل به عنوان کلید استفاده کنید.
- فرهنگ لغت می تواند با فراخوانی آیتم ها ، جایی که هر تاپل یک جفت ارزش کلیدی است ، لیست تاپل ها را برگرداند.
- تاپل ها تغییر ناپذیر هستند و نمی توانند حذف شوند ، اما حذف تاپل به طور کامل با استفاده از کلید واژه “del” امکان پذیر است.
- برای واکشی مجموعه های خاص از عناصر فرعی تاپل یا لیست ، ما از عملکرد منحصر به فردی به نام برش(slicing) استفاده می کنیم.