Son Yazılar

Python'da Tuple(Demet) Veritipi





 "Python'da Tuple'lar nedir, nerede kullanılır?" sorularına bu yazı içerisinde cevap arayacağız. Başka bir yazımızda değinmiş olduğumuz listelere bir hayli benzeyen bu yapılardan önce bahsettiğimiz yazımızı okumanızı tavsiye ederiz. Buradan "Python'da Listelerin Kullanımı" adlı yazımıza da ulaşabilirsiniz.

Tuple veritipleri nelerdir? Tuple veritipleri değiştirilemez ve sıralı bir veritipidir. Listelerle ne kadar benzerlik göstermiş olsa da aralarında önemli farklar vardır. Bunların başında tuple veritiplerinin değiştirilemez olması gelmektedir. Oluşturduğumuz bir listeyi daha sonra değiştirmemiz, üzerinde birtakım işlemler gerçekleştirmemiz mümkündü. Fakat tuple veritipini oluşturduğumuzda onu değiştirmekten çok okumak için kullanmamız gerekir. Değiştirme ihtiyacını hissettiğimiz bir proje gerçekleştiriyorsak liste veritipini kullanmamız çok daha mantıklı. Ama illa da oluşturduğumuz tuple veritipinden bir elemanı değiştirmek istersek bunu nasıl yapacağımızı da yazımızın sonunda göstermiş olacağız.

Öncelikle tuple veritipinin nasıl gösterildiğine bakalım. Altta gördüğünüz üzere gösterimleri listelerden farklıdır. Köşeli parantez yerine standart parantez tipiniz kullanmaktayız.

liste=[1,2,3,4] 
demet=(1,2,3,4)

Tuple veritipleri de aynı liste türünde olduğu gibi içerisinde birçok farklı türü barındırabilir. Örnekte gördüğünüz üzere bir tuple veritipinde aynı anda string, integer, float, boolean ve hatta liste ve demet türünden farklı elemanlar da yer alabilmektedir. Buradaki önemli bir detayı unutmuyoruz: Tuple içerisinde yer alan başka bir tuple veya liste içerisinde birden fazla eleman barındırsa dahi onun da indexi yine tek bir sayı ile ifade edilir.

demet=(1,2,3,4,"Ankara",[4,8,"Dokuz"],False,(18.05,4.33))

Liste veritipinde eleman çağırmanın aynısı yine burada da geçerlidir.

demet=(1,2,3,4,"Ankara",[4,8,"Dokuz"],False,(18.05,4.33))
print(demet[0]) #ilk eleman
print(demet[len(demet)-1]) #sonuncu eleman
print(demet[5][2]) #listenin 2.indexindeki eleman
print(demet[7][0]) #tuple içindeki tuple'ın 0.indexi

Bunların dışında bir tuple veya liste içerisinde belirtilen elemandan ne kadar olduğunu görmemiz için "count" metodundan yararlanırız.

demet=(1,2,2,2,3,4,"Ankara",[4,8,"Dokuz"],False,(18.05,4.33))
print(demet.count(2))

Peki eğer bir tuple içerisindeki elemanları gruplandırmak istersek bunu nasıl yaparız? Örneğin (1,2,3) şeklinde bir demet veritipimiz olsun. Biz burada sırasıyla 1,2 ve 3'ü a,b,c şeklinde adlandırmak daha doğru tabirle belirtilen harflerle gruplandırmak istersek de aşağıda verdiğimiz gibi bunu yapabiliriz.

tuple_abc=(1,2,3)
a,b,c=tuple_abc
print(a,b,c)

Son olarak da yazımızın başında bahsettiğimiz bir tuple içerisinde nasıl değişiklik yapacağımıza değinelim. Önce tuple veritipini liste veritipine dönüştüreceğiz. Ardından liste veritipi ile istediğimiz elemanı (tuple içindeki tuple hariç) değiştireceğiz. Ardından liste veritipini tekrardan tuple haline getireceğiz. Bu işlemleri sırasıyla aşağıda göreceksiniz.

demet=(1,2,2,2,3,4,"Ankara",[4,8,"Dokuz"],False,(18.05,4.33))
liste=list(demet)
liste[1]=5
liste[7][1]="Sekiz"
print(liste)
demet=tuple(liste)
print(demet)

Liste veritipinde bahsettiğimiz gibi tuple veritipinde de print(dir(demet)) fonksiyonu ile başka hangi farklı metodları kullanacağınızı görebilirsiniz. Esenlikle kalın...

Hiç yorum yok