Kayıt Düzeni (Demet) – Tuple

Tuple, liste gibidir. Fakat, listelerden farklı olarak değiştirilemez.

tup1 = ('physics', 'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5 );
tup3 = "a", "b", "c", "d";

Tek bir değer içeren bir tuple yazacaksanız bile virgül eklemeniz gerekir.

tup1 = (50,);

Listeye Göre Tuple Avantajları

  • Genelde heterojen (farklı) veri türleri için Tuple ve homojen (benzer) veri türleri için listeler kullanırız.
  • Tuple’lar değişmez olduğundan, bir demet boyunca yineleme, Liste’den daha hızlıdır. Yani hafif bir performans artışı var.
  • Değişmez öğeler içeren demetler, bir sözlük için anahtar olarak kullanılabilir. Listelerle bu mümkün değildir.
  • Değişmeyen verileriniz varsa, onu Tuple olarak uygulamak, yazmaya karşı korumalı kalması sağlanır.

Kayıt Düzeni Elemanına Erişim

Kayıt düzeninden istenilen elemana erişim için köşeli parantez ile index değeri ile çağırılır. Sabit bir değer ile tek bir elemana erişilebileceği gibi aralık belirterek birden fazla elemana erişilebilir.

tup1 = ('physics', 'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5, 6, 7 );
print "tup1[0]: ", tup1[0];
print "tup2[1:5]: ", tup2[1:5];

Kayıt Düzeni Elemanını Güncelleme

Kayıt düzeni elemanları tek tek güncellenemez. Fakat iki kayıt düzeni toplanarak yeni bir kayıt düzeni elde edilebilir.

tup1 = (12, 34.56);
tup2 = ('abc', 'xyz');

# Following action is not valid for tuples
# tup1[0] = 100;

# So let's create a new tuple as follows
tup3 = tup1 + tup2;
print tup3;

Kayıt Düzeni Elemanını Silme

Kayıt düzeni elemanları tek tek silinemez. Fakat kayıt düzeni tamamen del ifadesi ile silinebilir.

tup = ('physics', 'chemistry', 1997, 2000);
print tup;
del tup;
print "After deleting tup : ";
print tup;

Kayıt Düzeni Operatörleri

Python İfade Sonuıç Açıklama
len((1, 2, 3)) 3 Eleman sayısı
(1, 2, 3) + (4, 5, 6) (1, 2, 3, 4, 5, 6) Birbirine bağlama
(‘Hi!’,) * 4 (‘Hi!’, ‘Hi!’, ‘Hi!’, ‘Hi!’) Tekrar etme
3 in (1, 2, 3) True Üyelik
for x in (1, 2, 3): print x, 1 2 3 Yenileme

Indexing, Slicing, and Matrixes

Aynı listelerdeki indexing, slicing ve matriksler geçerlidir.

Python İfade Sonuç Açıklama
L[2] ‘SPAM!’ Ofsetler sıfırdan başlar
L[-2] ‘Spam’ Negatif: soldan say
L[1:] [‘Spam’, ‘SPAM!’] Dilimle istenilen bölümü getir

Tuple Metodları

Method Açıklama
cmp(tuple1, tuple2) Tuple elemanlarını karşılaştır
len(tuple) Tuple’ın sahip olduğu toplam eleman sayısı döndür
max(tuple) Tuple sahip olduğu en yüksek değeri döndür
min(tuple) Tuple sahip olduğu en düşük değeri döndür
tuple(seq) Bir listeyi, Tuple’a dönüştür