Bu ders, Python'da Tuple adı verilen başka bir temel yapı hakkındadır.
tuples
Tuple'lar listelere benzer, bu yüzden onları bir öğe listesi depolamak için kullanabiliriz. Ancak listelerden farklı olarak, onları değiştiremez, yeni öğeler ekleyemez veya mevcut öğeleri kaldıramayız. Tuple'ların değişmez olduğunu söyleyebiliriz.
Sana göstereyim. Listeler, listelerde köşeli parantezler yerine parantez içinde tanımlanır.
numbers = (4, 1, 7, 5, 0, 9)
Şimdi, demetler için yöntemler listesini çıkarırsak, ekleme veya ekleme yöntemlerine sahip olmadığımızı ve bu nedenle bu demete yeni öğeler eklenemediğini görebilirsiniz. Sadece iki yöntemimiz var: sayma ve indeksleme.
Bir öğenin oluşum sayısını saymak için "count" kullanırız. "İndeks", bir öğenin ilk oluşumunun indeksini bulmak için kullanılır. Yani sadece bir demet hakkında bilgi alabiliriz ve onu değiştiremeyiz. Bu arada, burada gördüğünüz diğer yöntemler iki alt çizgi ile başlar.
Bunları sihirli yöntemler olarak adlandırıyoruz. Bunlar daha ileri düzeyde bir konudur ve onlara gelecek serimizde değineceğiz.
Değişmez olmanın dışında, demetler bir listenin özelliklerinin çoğunu paylaşır.
Pratik olarak konuşursak, çoğu zaman listeleri kullanacaksınız, ancak demetler de yararlıdır. Bir öğe listesi oluşturmak ve programınızın hiçbir yerinde bu listeyi yanlışlıkla değiştirmediğinizden emin olmak istiyorsanız, bir Tuple kullanmak daha iyidir.
Ambalajın açılması
Bu bölümde size python'da unpacking denilen güçlü bir özelliği göstereceğim.
Bir demet "koordinat" tanımlayalım
coordinate = (1, 2, 3)
Şimdi bunların 'x', 'y' ve 'z' koordinatları olduğunu hayal edin. Şimdi diyelim ki bu değerleri alıp programımızda birkaç karmaşık ifadede kullanmak istiyoruz. Belki onları büyük bir karmaşık formülün parçası olarak dahil etmek istiyoruz.
Yani, birlikte şöyle bir kod yazmamız gerekecek:
coordinate[0] * coordinate[1] * coordinate[2]
Bu kod satırı tüm koordinatları çarpacaktır ancak kodumuzu bu şekilde yazmak verimsizdir. İlk olarak, daha iyi bir yaklaşım kullanalım ve bu koordinatları ayrı değişkenlerde saklayalım.
x = coordinate[0]
y = coordinate[1]
z = coordinate[2]
Bu daha iyi. Doğru? Yani şu ana kadar yeni bir şey yok. Şimdi size açma adı verilen güçlü bir özellik göstereyim ve bununla aynı sonucu çok daha az kodla elde edebiliriz.
x, y, z, = coordinate
Şimdi, bu tek satır kod, yukarıda yazılan üç satırlık koda tam olarak eşdeğerdir. Size nasıl çalıştığını açıklayayım.
Python yorumlayıcısı bu ifadeyi gördüğünde, bu tanımlama grubundaki ilk öğeyi alacak ve onu değişkene atayacaktır. Benzer şekilde, değişkenlere ikinci ve üçüncü maddeler atanacaktır. Bunu yaparken, bu demeti 3 değişkene açıyoruz. Çıktımızı kontrol edelim.
Paket açma listelerle de yapılabilir.
Sözlükler
Python'da sözlükleri öğreneceğiz. Anahtar/değer çiftleri olarak gelen bilgileri depolamak istediğimiz durumlarda sözlükleri kullanırız.
İşte bir örnek. Ad, e-posta, telefon numarası, adres vb. gibi birçok özelliğe sahip bir müşteri düşünün. Şimdi bu niteliklerin her birinin bir değeri var. Örneğin:
name = Jay
email = [email protected]
Bu örnekte, anahtarlarımız ad, e-posta ve telefondur. Her anahtar bir değerle ilişkilendirilir, bu yüzden burada bir sözlük kullanıyoruz. Bir sözlükle, bir grup anahtar/değer çiftini saklayabiliriz. Python'da bir sözlüğün nasıl tanımlanacağını göstereyim.
customer = {
"name": "Jay",
"email": "[email protected]",
"age": 30,
"is_verified": True
}
Anahtar, dizelere, sayılara, boolean veya herhangi bir şeye ayarlanabilir. Anahtarlar benzersizdir ve yalnızca bir kez tanımlanabilir, yani başka bir sayı ile yeniden “yaş” tanımlayamam. Onlar da büyük/küçük harfe duyarlıdır.
Şimdi, eğer yazarsam customer["name"],
müşterinin adını arayacaktır. Terminalde yazdıralım:
Yöntemleri sözlüklerle de kullanabiliriz. Yukarıda gösterilen aynı işlev, “get” yöntemi kullanılarak çoğaltılabilir.
Yukarıdaki iki yöntem arasında belirli bir fark vardır. Bunu göstereyim.
Var olmayan bir anahtarı yazdırdığımızda bunun bir hatayla sonuçlandığını görebilirsiniz. Öte yandan, var olmayan anahtarı çağırmak için yöntemi kullanmak, bir değerin yokluğunu temsil eden bir "yok" sonucuyla sonuçlanır. “get” yöntemini kullanırken, varsayılan bir değer de sağlayabiliriz.
Örneğin, bu sözlüğün “doğum tarihi” anahtarı yoksa, bunu şu şekilde sağlayabiliriz:
customer.get("birthdate", "Jan 01, 1994")
Ayrıca sözlükteki herhangi bir anahtarı bir listeye benzer şekilde güncelleyebiliriz. Diyelim ki sözlüğümüzdeki isim anahtarını güncellemek istiyoruz. İşte bunu nasıl yapacağız.
customer["name"] = "Shahbaz"
Benzer bir sözdizimi, sözlüğümüze yeni bir anahtar eklemek için de kullanılabilir. Benzer şekilde “doğum tarihi” anahtarını da ekleyelim.
customer["birthdate"] = "Jan 01, 1994"
Python'da sözlük kullanmanın temeli budur. Son derece önemlidirler ve gerçek dünyada pek çok uygulamaları vardır.
Egzersiz
Rakamları aşağıdaki gibi kelimelere çeviren bir program yazacaksınız:
Çözüm
İşte size çözüm arkadaşlar.
phone = input("Phone: ")
digits_mapping = {
"1": "One",
"2": "Two",
"3": "Three",
"4": "Four",
"5": "Five",
"6": "Six",
"7": "Seven",
"8": "Eight",
"9": "Nine",
"0": "Zero"
}
output = " "
for ch in phone:
output += digits_mapping.get(ch, "!") + " "
print(output)
Benzer şekilde, "emoji dönüştürücü" gibi başka eğlenceli programlar da oluşturabilirsiniz. İyi eğlenceler PYTHONER!
Sarmak!
Umarım bu dersten hoşlanmışsınızdır. Ardından, Python programlamanın önemli bir yönüne, işlevlerine ve parametrelerine dalacağız.
Yorum bırak