Python TUPLE – Paketle, Paketten Çıkar, Karşılaştır, Dilimle, Sil, Anahtar

Tuple Eşleştirme Nedir? Python?

Tuple Eşleştirme Python demetlerdeki ikinci elemanı eşleştirerek demetleri gruplandırma yöntemidir. Python programlamada her bir demetteki ikinci öğeyi kontrol ederek bir sözlük kullanılarak elde edilir. Ancak mevcut tuple'ların bir kısmını alarak yeni tuple'lar yapabiliriz.

Tuple Sözdizimi

Tup = ('Jan','feb','march')

Boş bir tuple yazmak için hiçbir şey içermeyen iki parantez şeklinde yazmanız gerekir.

tup1 = ();

Tek bir değere tuple yazmak için tek bir değer olsa bile virgül eklemeniz gerekir. Ayrıca sonuna aşağıda gösterildiği gibi noktalı virgül yazmanız gerekiyor.

Tup1 = (50,);

Tuple endeksleri 0'dan başlar ve birleştirilebilir, dilimlenebilir vb.

Tuple Ataması

Python Aynı anda birden fazla değişken atamanızı sağlayan tuple atama özelliğine sahiptir. Burada kişinin adı, soyadı, doğum yılı vb. bilgileri içeren tuple 1'i ve içindeki (2,….,1,2,3) gibi değerleri içeren tuple 7'yi atadık.

Örneğin,

(adı, soyadı, doğum yılı, en sevdiği film ve yılı, mesleği, doğum yeri) = Robert

İşte kod,

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, Robert'ın bilgilerinin listesini içerir
  • Tuple 2, içindeki sayıların listesini içerir
  • Tuple'da [0] değerini, Tuple 2 için ise 1 ile 4 arasındaki değeri çağırıyoruz.
  • Kodu çalıştırın - İlk demet için Robert adını verir, ikinci demet için ise sayı verir (2,3 ve 4)

Paketleme ve Paket Açma

Paketlemede değeri yeni bir demet içerisine koyarız, paketi açarken ise bu değerleri tekrar değişkenlere çıkarırız.

x = ("Guru99", 20, "Education")    # tuple packing
(company, emp, profile) = x    # tuple unpacking
print(company)
print(emp)
print(profile)

Tuple'ları karşılaştırma

Bir karşılaştırma operatörü Python tuple'larla çalışabilir.

Karşılaştırma her demetteki ilk öğeyle başlar. =,< veya > ile karşılaştırılmazsa ikinci öğeye geçilir ve bu böyle devam eder.

Her bir demetteki ilk elemanın karşılaştırılmasıyla başlar.

Bunu bir örnekle inceleyelim-

#dava 1

a=(5,6)
b=(1,4)
if (a>b):print("a is bigger")
else: print("b is bigger")

#dava 2

a=(5,6)
b=(5,4)
if (a>b):print("a is bigger")
else: print ("b is bigger")

#dava 3

a=(5,6)
b=(6,4)
if (a>b):print("a is bigger")
else: print("b is bigger")

Dava 1: Karşılaştırma her bir demetin ilk elemanıyla başlar. Bu durumda 5>1 olduğundan a çıkışı daha büyüktür

Olgu 2: Karşılaştırma her bir demetin ilk elemanıyla başlar. Bu durumda 5>5 sonuçsuzdur. Böylece bir sonraki öğeye geçer. 6>4, yani çıktı a daha büyük

Olgu 3: Karşılaştırma her bir demetin ilk elemanıyla başlar. Bu durumda 5>6 yanlıştır. Böylece else bloğuna gider ve “b daha büyüktür” yazar.

Sözlüklerde tuple'ları anahtar olarak kullanma

Tuple'lar hash edilebilir olduğundan ve list olmadığından, sözlükte kullanmak üzere bileşik bir anahtar oluşturmamız gerekiyorsa anahtar olarak Tuple'ı kullanmalıyız.

Örnek E-posta: Ad, soyad, telefon numarası çiftleri vb. haritaları içeren bir telefon rehberi oluşturmamız gerekirse bileşik anahtarla karşılaşırız. Değişkenleri son ve ilk sayı olarak bildirdiğimizi varsayarak şunu yazabiliriz: aşağıda gösterildiği gibi bir sözlük atama ifadesi:

directory[last,first] = number

Parantez içindeki ifade bir tuple'dır. Bu sözlükte gezinmek için for döngüsünde tuple atamasını kullanabiliriz.

for last, first in directory:
print first, last, directory[last, first]

Bu döngü, dizindeki tuple'lar olan anahtarlarda gezinir. Her bir demetin öğelerini en sona ve ilk sıraya atar ve ardından adı ve karşılık gelen telefon numarasını yazdırır.

Tuple'lar ve sözlük

Sözlük, her bir demetin bir anahtar değer çifti olduğu öğeleri çağırarak demetlerin listesini döndürebilir.

a = {'x':100, 'y':200}
b = list(a.items())
print(b)

Tuple'ları Silme

Tuple'lar değiştirilemez ve silinemez. Bir demetteki öğeleri silemez veya kaldıramazsınız. Ancak tuple'ı tamamen silmek anahtar kelimeyi kullanarak mümkündür

del

Tuple Dilimleme

Tuple veya listeden belirli alt öğe kümelerini getirmek için dilimleme adı verilen bu benzersiz işlevi kullanırız. Dilimleme yalnızca tuple için değil aynı zamanda dizi ve liste için de geçerlidir.

x = ("a", "b","c", "d", "e")
print(x[2:4])

Bu kodun çıktısı ('c', 'd') olacaktır.

Burada ise Python 2 Yukarıdaki örneklerin tümü için kod

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]

Tuple ile yerleşik işlevler

Farklı görevleri gerçekleştirmek için Tuple, all(), any(), enumerate(), max(), min(), sorted(), len(), Tuple() vb. gibi birçok yerleşik işlevi kullanmanıza olanak tanır.

Tuple'ın listeye göre avantajları

  • Demetler değişmez olduğundan, demet boyunca yineleme listeye göre daha hızlıdır.
  • Değişmez öğelerden oluşan tuple'lar sözlük için anahtar olarak kullanılabilir, ancak listede bu mümkün değildir.
  • Değiştirilemez verileriniz varsa, bunu tuple olarak uygulamak, yazmaya karşı korumalı kalmasını garanti eder

ÖZET

Python Aynı anda birden fazla değişken atamanızı sağlayan tuple atama özelliğine sahiptir.

  • Tuple'ların Paketlenmesi ve Açılması
  • Paketlemede değeri yeni bir demet içerisine koyarız, paketi açarken ise bu değerleri tekrar değişkenlere çıkarırız.
  • A karşılaştırma operatörü Python tuple'larla çalışabilir.
  • Sözlüklerde tuple'ları anahtar olarak kullanma
  • Tuple'lar yıkanabilir, listeler değiştirilemez
  • Sözlükte kullanmak üzere bileşik bir anahtar oluşturmamız gerekiyorsa anahtar olarak Tuple kullanmalıyız
  • Sözlük, her bir demetin bir anahtar değer çifti olduğu öğeleri çağırarak demetlerin listesini döndürebilir
  • Tuple'lar değiştirilemez ve silinemez. Bir demetteki öğeleri silemez veya kaldıramazsınız. Ancak tuple'ı tamamen silmek "del" anahtar kelimesini kullanarak mümkündür
  • Tuple veya listeden belirli alt öğe kümelerini getirmek için dilimleme adı verilen bu benzersiz işlevi kullanırız.