Giriş
Demetler (tuples), Python’da verileri bir arada tutmak için kullanılan temel veri yapılarından biridir. Listelere benzese de önemli bir farkı vardır: demetler değiştirilemez (immutable) yapıdadır. Bu, bir demet oluşturulduktan sonra elemanlarının değiştirilemeyeceği anlamına gelir.
Demet Oluşturma
Demetler, normal parantez ()
kullanılarak tanımlanır.
my_tuple = (1, 2, 3, 4)
print(my_tuple) # Çıktı: (1, 2, 3, 4)
Tek Elemanlı Demet
Tek bir elemandan oluşan demet oluştururken sonuna virgül koymak zorunludur:
single_element = (5,) # Bu bir demettir
not_a_tuple = (5) # Bu bir tam sayıdır
Demetlere Erişim
Demetlerdeki elemanlara indeks numarası ile erişebilirsiniz:
tuple1 = (10, 20, 30, 40)
print(tuple1[0]) # Çıktı: 10
print(tuple1[2]) # Çıktı: 30
Dilimleme (Slicing)
tuple2 = (0, 1, 2, 3, 4, 5)
print(tuple2[1:4]) # Çıktı: (1, 2, 3)
Demetler Değiştirilemezdir
tuple3 = (1, 2, 3)
# tuple3[0] = 99 # Hata: 'tuple' object does not support item assignment
Döngü ile Demet Üzerinde Gezme
fruits = ("elma", "armut", "muz")
for fruit in fruits:
print(fruit)
Demetleri Parçalama (Unpacking)
person = ("Ali", 25, "Mühendis")
isim, yas, meslek = person
print(isim) # Çıktı: Ali
print(yas) # Çıktı: 25
print(meslek) # Çıktı: Mühendis
Demetlerde Kullanılabilecek Fonksiyonlar
my_tuple = (4, 1, 3, 2, 1)
print(len(my_tuple)) # Eleman sayısı: 5
print(my_tuple.count(1)) # 1 değeri kaç kez geçiyor: 2
print(my_tuple.index(3)) # 3'ün bulunduğu indeks: 2
Demet ile Liste Arasındaki Farklar
Özellik | Liste (list) | Demet (tuple) |
---|---|---|
Değiştirilebilir mi? | Evet | Hayır |
Parantez | [ ] | ( ) |
Performans | Daha yavaş | Daha hızlı |
Kullanım Alanı | Değişken veri | Sabit veri |
Ne Zaman Demet Kullanmalıyız?
- Verilerin değişmemesi gerektiği durumlarda
- Performansın kritik olduğu yerlerde
- Fonksiyonlardan birden fazla değer döndürmek için
def koordinat():
return (10, 20)
x, y = koordinat()
print(x, y) # Çıktı: 10 20
Sonuç
Demetler, Python programlarında verilerin güvenli ve hızlı bir şekilde saklanmasını sağlar. Değiştirilemez olmaları sayesinde daha güvenilir kodlar yazılmasına yardımcı olurlar. Demetleri ne zaman ve nasıl kullanacağınızı bilmek, Python’daki programlama yeteneklerinizi önemli ölçüde artıracaktır.