#Python: Python Dersleri 20: Demetler (tuples)
#DEMETLER (Tuple)
#Demetler (Tuples), birden fazla değeri bir arada tutan liste benzeri unsurlardır. Dışına parantez gelir. Fakat elemanları birden fazla olduğu müddetçe dışına parantez gelmese de olur.
#Demetler oluşturulduğunda sonradan elemanları değiştirilemez. Buna dikkat edin. Elemanlar değiştirilmemekle birlikte bir demetin kendisi komple değiştirilebilir. Yani parçaları bağımsız olarak değiştirilemez, kendisi bir bütün olarak değiştirilebilir veya yok edilebilir.
demet=3,5,6,8
print(demet)
print(type(demet))
demet=(4,2)
print(demet)
demet=tuple([33,44,2,1])
print(demet)
#Görüldüğü gibi bir çok şekilde demetler üretilebilir.
#Eğer demetlerin eleman sayısı 1 olursa bu durumda Python bunu demet olarak değil, bir değişken olarak algılar. Aşağıdaki örneğe dikkat edin:
demet2=(1)
print(demet2)
print(type(demet2))#demet2 türü integer olarak belirlendi. Yani bunu bir demet olarak algılamadı.
demet2=1,3,4
print(type(demet2))#demet2 eleman sayısı 1'den fazla olduğu için bunu demet olarak algıladı ve <class 'tuple'> sonucunu verdi.
demet2+=(1,5,4,333)#Yeni eleman eklemek için + işareti kullanılabilir. Tabii yeni elemanlara parantez konması makul olacaktır. Aksi taktirde sıkıntılı durumlar olabilir.
#DİKKAT: Daha önce demiştik ki bir demet oluşturulduğunda ona ekleme veya üzerinde bir değişiklik yapmak mümkün değildir. Peki burada nasıl oldu da ekleme yaptık? Yani demet2+=(1,5,4,333)komutu ile aslında ekleme yaptık. Burada aslında Python’ın algısı bizden farklıdır. demet2+=(1,5,4,333)ifadesi aslında bir ekleme değil, tamamen değiştirme işidir. Zira bu komut aynı zamanda demet2=demet2+(1,5,4,333) anlamına gelmektedir. Yani aslında bu işlem, demet2 değişkenini tamamen değiştirmek anlamına geliyor. Peki eklemek mümkün değil ile neyi kast ediyoruz? Örneğin APPEND ile ekleme yapılmaz. Listelerde bulunan ekleme komutları ile ekleme yapılmaz. Buradan şunu da anlayabilir ki APPEND ekleme yapar, degisken+=”merhaba” gibi bir ifade ise değişkeni tamamen değiştirir. Sonuç aynıdır fakat işlem aslında farklıdır.
print(demet2)
#Aşağıdaki örneği dikkatlice inceleyin:
sayi=1
print(type(sayi)) #Sonuç: integer
sayi+=5
print(sayi)#Sonuç 6 oldu. Zira sayi hala integer türündedir.
#sayi+=(4,6)
#print(sayi)#Burada da görüldüğü gibi matematiksel işlem gibi algıladı.
#sayi2=(4)
#sayi2+=(3,4)#Burada hata verdi. Zira sayi2 bir integer olarak oluşturuldu. Sonradan türü değiştirilemedi.
#print(sayi2)
#Eğer tek elemanı olan bir demet tanımlamak isterseniz aşağıdaki yolu izleyin:
yeni_demet=55,
print(yeni_demet)
print(type(yeni_demet))
print(len(yeni_demet))#Buradan da anlaşılacağı gibi tek elemanı olan bir demet tanımlanmıştır.
yeni_demet=yeni_demet+(443,)#Eğer yeni bir eleman eklemek istiyorsanız tek elemansa arkasına virgül koyun.
yeni_demet=yeni_demet+(1,4)
print(yeni_demet)
print("İndeks numarası 1 olan eleman:",yeni_demet[1])
print("Toplamları:",sum(yeni_demet))
#Demetlerde arama yapmak isterseniz index() özelliğini kullanabilirsiniz. Ayrıca demet içinde bir eleman kaç defa geçiyorsa bunu count() ile tespit edebilirsiniz.
demet=4,3,21,23,44,33,44,32,33,14,15,33
print(demet)
print(
demet.index(21)#21 adındaki elemanın indeks numarasını tespit eder. Cevap 2. Yani 21 adındaki elemanın indeks numarası 2'dir.
)
print(
demet.count(33)#33 elemanının demet içinde toplam kaç defa geçtiğini tespit eder. Sonuç 3 defadır
)
#DİKKAT: count ve index özellikleri listeler için de aynı şekilde çalışmaktadır.
##############################################################################################
#Tüpler her zaman bir değişken olarak atanmak zorunda değildir. Farklı değişkenleri tanımlamakta da kullanılabilir.
x1,x2,x3=1333,5,7#Burada dikkat edilirse eşittir işaretinin sol tarafı da demet, sağ tarafı da demettir.
print(x1)
sayilar=5,3,2,56,442,111
print(sayilar[1])
print(sayilar[1:3])
print(sum(sayilar[1:3]))
Python: Python Dersleri 20: Demetler (tuples)
Kodu Kopyala
TÜM PYTHON KODLARI
Youtube Kanalımız
Aşağıdaki makrolar işinize yarayabilir.
Aşağıdaki makrolar işinize yarayabilir.