Pyhton Dictionary Veri Yapısı
Python dilinde, veri yapısı olarak "dictionary" (Sözlük) adı verilen bir yapı vardır. Dictionary, anahtar-değer bileşkesinden elde edilen bir veri yapısıdır. Anahtarlar özel bir veri türü olan "immutable" (değiştirilemeyen) veri türlerinden olmalıdır. Örnek olarak, string, integer, float, boolean gibi veri türleri anahtar olarak kullanılabilir. Değerler ise herhangi bir veri türü olabilir.
Dictionary, bir sözlük gibi düşünebilirsiniz. Bir sözlükte de kelimelere anlamları eşlenir. Benzer şekilde, bir Python dictionary 'sinde de anahtarlar değerlere eşlenir. Örneğin, aşağıdaki örnekte "ad" anahtarı "Ahmet" değerine, "soyad" anahtarı "Yılmaz" değerine eşlenir:
kisiler = {
"ad": "Ahmet",
"soyad": "Yılmaz"
}
Dictionary'lerden öğe çağırmak için, öğenin anahtarını nokta işareti (.) ile birleştirerek çağırabilirsiniz. Örneğin:
kisiler = {
"ad": "Ahmet",
"soyad": "Yılmaz"
}
ad = kisiler.ad # Ahmet
soyad = kisiler.soyad # Yılmaz
Dictionary'lerde anahtarlar özel veri türlerinden olmalıdır ancak değerler herhangi bir veri türü olabilir. Örneğin, aşağıdaki dictionary örneğinde anahtarlar string veri türünde iken, değerler farklı veri türlerindedir:
bilgiler = {
"ad": "Ahmet",
"yas": 35,
"maas": 3500.50,
"calisan_mi": True
}
Dictionary'ler, veri yapısı olarak listeler ve tuplar gibi kullanılabilir. Örneğin, aşağıdaki örnekte "ogrenciler" adlı bir dictionary oluşturulmuş ve içine öğrenci bilgileri yerleştirilmiştir:
ogrenciler = {
"ogrenci_1": {
"ad": "Ahmet",
"soyad"
Pyhton Dictionary Kod Örnekleri
Örnek 1
bilgiler = {
"ad": "Ahmet",
"yas": 35,
"maas": 3500.50,
"calisan_mi": True
}
print(bilgiler) # {'ad': 'Ahmet', 'yas': 35, 'maas': 3500.5, 'calisan_mi': True}
print(bilgiler['ad']) # Ahmet
print(bilgiler['yas']) # 35
print(bilgiler['maas']) # 3500.5
print(bilgiler['calisan_mi']) # True
Örnek 2
ogrenciler = {
"ogrenci_1": {
"ad": "Ahmet",
"soyad": "Yılmaz",
"yas": 15
},
"ogrenci_2": {
"ad": "Mehmet",
"soyad": "Öztürk",
"yas": 17
},
"ogrenci_3": {
"ad": "Emine",
"soyad": "Kaya",
"yas": 16
}
}
ogrenci_1_bilgileri = ogrenciler['ogrenci_1']
print(ogrenci_1_bilgileri) # {'ad': 'Ahmet', 'soyad': 'Yılmaz', 'yas': 15}
print(ogrenci_1_bilgileri['ad']) # Ahmet
print(ogrenci_1_bilgileri['soyad']) # Yılmaz
print(ogrenci_1_bilgileri['yas']) # 15
ogrenci_2_bilgileri = ogrenciler['ogrenci_2']
print(ogrenci_2_bilgileri) # {'ad': 'Mehmet', 'soyad': 'Öztürk', 'yas': 17}
print(ogrenci_2_bilgileri['ad']) # Mehmet
print(ogrenci_2_bilgileri['soyad']) # Öztürk
print(ogrenci_2_bilgileri['yas']) # 17
ogrenci_3_bilgileri = ogrenciler['ogrenci_3']
print(ogrenci_3_bilgileri) # {'ad': 'Emine', 'soyad': 'Kaya', 'yas': 16}
print(ogrenci_3_bilgileri['ad']) # Emine
print(ogrenci_3_bilgileri['soyad']) # Kaya
print(ogrenci_3_bilgileri['yas']) # 16
Örnek 3
# Sözlük oluşturma
telefon_defteri = {
"Ali": "+90 123 456 7890",
"Ayşe": "+90 987 654 3210",
"Murat": "+90 456 123 4560"
}
# Sözlükteki bir öğeyi değiştirme
telefon_defteri["Ali"] = "+90 111 222 3333"
# Sözlükteki bir öğe ekleme
telefon_defteri["Zeynep"] = "+90 444 555 6666"
# Sözlükteki bir öğeyi silme
del telefon_defteri["Murat"]
# Sözlükteki tüm öğeleri yazdırma
for isim, numara in telefon_defteri.items():
print(f"{isim}'in numarası: {numara}")
Bu örnekte, önce "telefon_defteri" adında bir sözlük oluşturuyoruz. Daha sonra sözlükteki bir öğeyi değiştiriyoruz ve yeni bir öğe ekliyoruz. Sözlükteki bir öğeyi silmek için "del" anahtar kelimesini kullanıyoruz. Son olarak, sözlükteki tüm öğeleri yazdırmak için "items()" yöntemini kullanıyoruz.