Adım Adım Sözlükler: Python'da Sözlüklerle Verileri Saklamak

Adım Adım Sözlükler: Python'da Sözlüklerle Verileri Saklamak

Adım adım sözlükler ile verilerinizi Python'da saklamak istiyor musunuz? Bu kapsamlı kılavuz, adım adım sözlüklerin nasıl kullanılacağı hakkında size tüm detayları sunacak! Veri saklamada sözlükleri kullanarak programlama becerilerinizi artırın!

Adım Adım Sözlükler: Python'da Sözlüklerle Verileri Saklamak

Python programlama dilinin en kullanışlı veri yapılarından biri olan sözlükler, bir anahtar-değer çifti olarak verileri saklamak için kullanılır. Bu yapı, bir listenin yerini alabilir ve kod yazmayı daha da kolaylaştırır. Bu makalede, Python'da sözlüklerin nasıl oluşturulacağı, değiştirileceği ve silineceği gibi farklı adımların nasıl gerçekleştirileceği anlatılacaktır.

Bir sözlük, bir anahtar-değer çifti olarak tanımlanır. Anahtar kelime olarak kullanılabilen herhangi bir nesne olabilirken, değer herhangi bir veri türü olabilir. Sözlükler, bir JSON dosyasının yapısına benzerdir ve her bir çift ayrı bir satırda yer alır. Örneğin, {“meyve”: “elma”, “renk”: “kırmızı”} bir sözlüktür ve “meyve” ve “renk” anahtarlarına sahiptir. Bu anahtarlar sayesinde, değerlerine erişim sağlanır.

Sözlük oluşturmak için, süslü parantezler (“{}”) kullanılır. Sözlük, anahtar-değer çiftleri arasında virgülle ayrılmış herhangi bir sayıda içerik alabilir. Örnek olarak:

Python Kodu Açıklama
my_dict = {“ad”: “Ali”, “soyad”: “Kara”, “şehir”: “Ankara”} 3 anahtar-değer çifti içeren bir sözlük oluşturulur.

Bir sözlüğe yeni bir anahtar-değer çifti eklenebilir veya mevcut bir çift değiştirilebilir. Sözlükler, listeler veya tuple’lar gibi değiştirilebilen bir veri türüdür. Sözlüklerin değiştirilemeyen bir versiyonu da vardır, bunlar “sabit sözlükler” olarak bilinir. Ancak bu makalede, standart sözlükler hakkında konuşulacaktır.


Sözlük Nedir?

Python'da sözlükler, anahtar-değer çiftleri olarak adlandırılan verileri saklamak için kullanılan bir yapıdır. Her bir anahtara karşılık gelen bir değer ve bu anahtar-değer çiftlerinin her biri bir sözlük öğesi olarak tanımlanabilir. Sözlükler, listelerin aksine sıralı değillerdir.

Sözlükler, programlama dillerinde sıklıkla kullanılan veri yapılarından biridir. Python'da sözlüklerin kullanımı oldukça kolaydır ve özellikle büyük veri kümelerini saklamak için ideal bir yapıdır. Ayrıca sözlükler, değiştirilebilir yapıdadırlar, yani sözlüklere veri ekleme, güncelleme ve silme işlemleri yapılabilmektedir.

Sözlüklerin kullanışlı olmasının bir diğer nedeni, farklı veri türlerinin tek bir sözlük içinde saklanabilmesidir. Örnek olarak, bir müşterinin adı ve telefon numarası bir sözlük içinde saklanabilir ve müşteri adına erişmek için sözlüğün anahtarlığı kullanılabilir. Bu sayede, veriler daha kolay, daha hızlı ve daha doğru bir şekilde saklanabilir ve işlenebilir.


Sözlük Oluşturma

Python'da sözlükler, köşeli parantezler içinde anahtar ve değer çiftleri olarak saklanır. Örneğin, {'meyve': 'elma', 'sebze': 'patates'} gibi bir sözlük, "meyve" ve "sebze" anahtarlarına karşılık gelen "elma" ve "patates" değerlerini içerir.

Sözlük oluşturmak için, süslü parantezler içinde anahtar-değer çiftlerini belirtin. Her çift virgülle ayrılmalıdır. Anahtar ve değer arasına iki nokta konulmalıdır.

Örneğin: ```python meyveler = {'elma': 2, 'portakal': 3, 'üzüm': 5}```

Bu örnekte, "elma", "portakal" ve "üzüm" sözlük anahtarlarıdır ve 2, 3 ve 5 sözlük değerleridir.

Sözlüklere veri ekleme işlemi, anahtar ve değer çiftlerinin sözlüğe doğrudan eklenmesi yoluyla yapılır.

Örneğin:```python meyveler['armut'] = 4```

Bu örnekte, "armut" anahtarına ve 4 değerine sahip yeni bir çift meyveler sözlüğüne eklendi.


Anahtar ve Değerler

Sözlükler, anahtarlar ve değerleri bir araya getirerek verileri tutmamızı sağlar. Sözlükler, anahtarlar ve değerler arasında bir eşleşme sağlar. Her anahtar, bir değerle ilgili verileri temsil eder. Örneğin, bir müşteri veri tabanı oluşturmak istediğimizde, müşterilerin adı, adresi, telefon numarası ve e-posta adresi gibi farklı verileri saklamamız gerekir. Bu bilgileri anahtarlar ve değerler olarak sözlüklere ekleyebiliriz.

Bu sözlükler birçok veri türünü içerebilir. Örneğin, bir müşteri veri tabanı sözlüğümüz, müşterilerin adı (string), adresi (string), telefon numarası (integer) ve e-posta adresi (string) içerebilir. Sözlüklerde anahtarlar ve değerler, herhangi bir veri türü olabilir. Ayrıca aynı sözlük içinde anahtarlar ve değerler farklı veri tiplerini de içerebilir.

Anahtar Değer
Ad Ahmet
Soyad Yılmaz
Telefon Numarası 5551112233
Adres İstanbul
  • Anahtarlara farklı veri türleri eklenebilir:
    • string
    • integer
    • float
    • tuple
    • list
  • Değerlerde farklı veri türleri kullanılabilir:
    • string
    • integer
    • float
    • tuple
    • list
    • sözlük(dictionary)

Sözlüklerin anahtarları değişmez olmalıdır. Bu nedenle, aynı anahtar birden fazla kez tanımlandığında son tanımlanan değeri saklayacaktır. Sözlükler, bir liste veya tuple'dan farklı olarak, sıralı değillerdir. Bu nedenle, sözlüklerdeki anahtar-değer çiftleri, belirli bir sıraya göre değil, eşleşmelerine göre saklanır.


Anahtarlar

Sözlüklerin temel bileşenleri olan anahtarlar, farklı veri türlerini alabilen bir yapıya sahiptir. Anahtarlar, herhangi bir sayısal veya karakter dizisi ifade edebilir ve hatta diğer Python veri tipleri de anahtar olarak kullanılabilir.

Bir sözlükte, aynı anahtara sahip birden fazla değer atanamaz. Ancak anahtarlar aynı olmayan farklı veri tiplerinde olabilir. Örneğin, {'isim': 'Ahmet', 1: 'bir', (2,3): 'iki-üç'} gibi.

Bu özellik, sözlüklerin farklı durumlarda kullanılabilmesini sağlar. Sözlükler, programlamada genellikle bir veri deposu olarak kullanılır ve anahtarların farklı veri tiplerinde olabilmesi, verileri daha organize bir şekilde saklamamızı ve gereksiz tekrarlar yapmamamızı olanaklı kılar.


Değerler

Bir sözlük anahtarlarına karşılık gelen değerleri içeren bir veri yapısıdır. Sözlük oluşturma işlemi sırasında sözlüğe veri eklemek için anahtar ve değerleri belirlemeniz gerekir. Sözlüklerde, anahtarlar herhangi bir veri türü olabilir ve değerler de farklı veri türleri alabilir. Mesela, bir sözlük oluşturulurken bir anahtar olarak bir isim ve değer olarak bir tarih veya bir sayı alınabilir.

Sözlük değerleri farklı veri türleri alabilir. Sözlüklerde, değerler listeler, demetler, sayılar, dize, bool ve hatta bir başka sözlük de olabilir. Örneğin, bir sözlük oluşturulabilir ve anahtarlarına göre değerleri (markaları) sözlüğün içine yerleştirilebilir. Bu sözlük her bir marka için bir liste içerebilir. Liste her bir marka için farklı modelleri içerebilir. Örneğin:

Marka Modeller
Apple
  • iPhone
  • iPad
  • Macbook
Samsung
  • Gorilla Glass
  • AMOLED
  • Galaxy Note
Google
  • Pixel

Bu sözlükte, markalar anahtarlar olarak kullanılır ve her anahtara karşılık gelen değer, listede yer alan modellerdir. Bu örnekte görüldüğü gibi, bir sözlük içerisinde farklı veri türleri eklenebilir.


Sözlük Verilerine Erişim

Python'da sözlükler sıklıkla kullanılan bir veri saklama yöntemidir. Bu veri yapısı ile ilgili işlemler yapabilmek, sözlüklere veri eklemek veya sözlük verileri üzerinde değişiklik yapmak için öncelikle sözlük verilerine erişmek gerekir. Sözlük verilerine erişimi sağlamanın iki yolu vardır: anahtara göre erişmek veya .get() metodu ile erişmek.

Anahtara göre erişim, sözlükteki veriye ulaşmak için anahtar kelime kullanarak arama yapar. Örneğin, bir öğrenci sözlüğü düşünelim. Öğrencilerin adlarını anahtar olarak ve sınıf notlarını değer olarak kaydedelim. Eğer bir öğrencinin notuna erişmek istiyorsak, öğrencinin adını anahtar olarak kullanarak arama yapabiliriz.

Örneğin:```ogrenciler = {"Ahmet": 95, "Mehmet":80, "Ayşe": 75}notu = ogrenciler["Mehmet"]print(notu)```Bu kod parçası, sözlükteki "Mehmet" anahtar kelimesinin değerini alacak ve ekranda 80'e eşit olan notu yazdıracaktır.

Diğer bir erişim yöntemi ise .get() metodu ile yapılan erişimdir. Bu metot, sözlükteki anahtara göre veri erişimini sağlamakta kullanılır. Ayrıca, anahtar kelimesi sözlükte yoksa hata vermek yerine varsayılan bir değer döndürür.

Örneğin:```ogrenciler = {"Ahmet": 95, "Mehmet":80, "Ayşe": 75}notu = ogrenciler.get("Mehmet")print(notu)```Bu kod parçası, sözlükteki "Mehmet" anahtar kelimesinin değerini alacak ve ekranda 80'e eşit olan notu yazdıracaktır.

Ayrıca, .get() metodu, varsayılan bir değer belirtilirse anahtar kelimesi sözlükte yoksa bu varsayılan değeri döndürür.

Örneğin:```ogrenciler = {"Ahmet": 95, "Mehmet":80, "Ayşe": 75}notu = ogrenciler.get("Ali", "Öğrenci Bulunamadı")print(notu)```Bu kod parçası, sözlükteki "Ali" anahtar kelimesinin değeri yoksa "Öğrenci Bulunamadı" mesajını ekranda yazdıracaktır.

Sözlük verilerine erişim, sözlüklerdeki verileri işlemek için önemli bir adımdır. Bu adımın düzgün bir şekilde yapılması, sözlük kullanımının daha etkili olmasını sağlayacaktır.


Sözlükte Düzenleme Yapma

Python'daki sözlük yapısı, verilerle işlemler gerçekleştirmek için oldukça kullanışlıdır. Sözlükler üzerinde yapabileceğimiz birçok işlem vardır. Örneğin, sözlük değerlerini değiştirebilir veya yeni anahtar-değer çiftleri ekleyebiliriz.

Bir sözlük değerini değiştirmek için, anahtar değeri kullanarak erişim sağlamamız gerekmektedir. Örneğin, bir kişinin yaşını güncellemek için şu kod kullanılabilir:

Kod:personel = {"ad": "John", "soyad": "Doe", "yaş": 25}
personel["yaş"] = 30
print(personel)
Çıktı:{"ad": "John", "soyad": "Doe", "yaş": 30}

Yeni bir anahtar-değer çifti eklemek için, yeni bir anahtar değeri oluşturmalı ve ona bir değer atamalıyız. Örneğin, bir kişinin memleketini eklemek için şu kod kullanılabilir:

Kod:personel = {"ad": "John", "soyad": "Doe", "yaş": 25}
personel["memleket"] = "Ankara"
print(personel)
Çıktı:{"ad": "John", "soyad": "Doe", "yaş": 25, "memleket": "Ankara"}

Bu şekilde, sözlükler üzerinde kolaylıkla güncelleme ve ekleme işlemleri yapabiliriz.


Sözlükten Veri Silme

Sözlüklerin kullanımının en önemli avantajlarından biri, içinde bulunan verilerin kolayca düzenlenebilmesidir. Sözlükten veri silmek de bu işlemler arasındadır. Sözlüklerde anahtar-değer çifti halinde saklanan verilerden birini ya da birkaçını silmek oldukça basittir.

Bu işlem için ilgili anahtarı belirleyip del ifadesini kullanmak gerekiyor. Örnek olarak, "telefon_rehberi" adlı bir sözlük içindeki "Ahmet" değerini silmek istediğimizi varsayalım. Kodumuzu del telefon_rehberi["Ahmet"] şeklinde yazarak, "Ahmet" anahtarına karşılık gelen veriyi silmiş oluruz.

Eğer belirlediğiniz anahtar, sözlükte yer almıyorsa, hata mesajı alırsınız. Bu durumu engellemek için, önceden if koşulu kullanarak anahtarın varlığını kontrol etmeniz gerekiyor. Anahtarı olduğunu biliyorsanız ve yine de hata mesajı alıyorsanız, anahtarın doğru yazılmamış olma ihtimalini de göz önünde bulundurmanız gerekiyor.


Sözlük Yineleme

Sözlükler, içinde anahtar-değer çiftleri bulunduran bir veri türüdür ve bu veriler üzerinde işlem yapmak gerektiğinde yineleme işlemi yapmak önemlidir. Python'da sözlükler üzerinde yineleme yapmak için farklı yöntemler bulunmaktadır.

En yaygın kullanılan yöntem for döngüsü kullanmaktır. Bu yöntemle, sözlüğün anahtar-değer çiftleri tek tek gezilebilir. Örneğin:

    for anahtar, deger in sozluk.items():        print(anahtar, deger)

Bu kod bloğu, sözlükteki her bir anahtar-değer çiftini alır ve her bir çift için anahtar ve değeri yazdırır.

Sözlükler üzerinde yineleme yapmak için ayrıca .keys() ve .values() adlı iki farklı metot kullanılabilir. Bu metotları kullanarak sırasıyla anahtarları ve değerleri gezebilirsiniz. Örneğin:

    for anahtar in sozluk.keys():        print(anahtar)            for deger in sozluk.values():        print(deger)

Bu kod blokları, sırasıyla sözlükteki anahtarları ve değerleri alır ve her biri için yazdırır.

Sözlükler üzerinde yineleme işlemleri, verilerin düzenlenmesi, silinmesi veya işlenmesi gibi birçok kullanımda önemlidir. Python'daki farklı yöntemleri öğrendiğinizde, sözlüklerle çalışmanız daha da kolaylaşacak.


For Döngüsü ile Sözlük Yinelemek

Python'da sözlükleri kullanmak, verileri daha kolay ve etkili bir şekilde saklamamızı sağlar. Daha önce sözlükleri nasıl oluşturacağımızı, sözlüklere veri ekleme, düzenleme ve silme işlemlerini nasıl yapacağımızı, anahtar ve değerlerin nasıl tanımlanacağını ve sözlük verilerine erişim yöntemlerini öğrendik. Şimdi ise, for döngüsü kullanarak sözlükler üzerinde nasıl yineleme yapacağımızı öğreneceğiz.

For döngüsü, her bir öğenin sözlükteki anahtarına eşitlenerek sözlük üzerinde yineleme yapmak için kullanılır. Örneğin, aşağıdaki kodda, 'friends' adlı bir sözlük oluşturduk ve for döngüsü kullanarak sözlükteki her bir arkadaş ismini yazdırdık:

friends = {'John': 26, 'Alice': 24, 'Bob': 27}for friend in friends:    print(friend)

Yukarıdaki kodu çalıştırdığımızda, Python bize 'John', 'Alice' ve 'Bob' isimlerini sırasıyla yazdıracaktır. Ancak, burada arkadaşların yaşlarını yazdıramayız. Bunun için sözlükteki her bir anahtarın değerine de erişmemiz gereklidir. Bunun için aşağıdaki kodu kullanabiliriz:

friends = {'John': 26, 'Alice': 24, 'Bob': 27}for friend, age in friends.items():    print(friend + ' is ' + str(age) + ' years old.')

Yukarıdaki kodu çalıştırdığımızda, Python bize 'John is 26 years old.', 'Alice is 24 years old.' ve 'Bob is 27 years old.' cümlelerini sırasıyla yazdıracaktır. for döngüsü, sözlüklerde yineleme yapmak için oldukça kullanışlı bir yöntemdir ve sözlüklerle çalışırken sıklıkla kullanacağımız bir yöntemdir.


Diğer Yineleme Yöntemleri

Python'da sözlükler üzerinde yineleme yapmak için kullanabileceğiniz birçok yöntem vardır ve bunlardan bazıları .keys() ve .values() metodlarıdır. Bu metodlar, sözlüklerin anahtarlarına veya öğelerine erişmenize olanak tanır.

.keys() metodu, sözlüklerin anahtarı değerlerine erişmek için kullanılır. Bu metot, bir sözlüğün anahtarlarını liste olarak döndürür. Örneğin:

``` pythonsozluk = {"ad": "Ali", "soyad": "Yılmaz", "yas": 30}anahtarlar = sozluk.keys()print(anahtarlar)```Bu kod, "ad", "soyad" ve "yas" anahtarlarından oluşan bir liste döndürür.

.values() metodu, sözlüklerin değerlerine erişmek için kullanılır. Bu metot da bir sözlüğün değerlerini liste olarak döndürür. Örneğin:

``` pythonsozluk = {"ad": "Ali", "soyad": "Yılmaz", "yas": 30}degerler = sozluk.values()print(degerler)```Bu kod, "Ali", "Yılmaz" ve 30 değerlerinden oluşan bir liste döndürür.

Sözlüklerin öğelerine erişirken .items() metodunu kullanabilirsiniz. Bu metot, bir sözlükteki her bir anahtar-değer çiftini tuple olarak döndürür. Örneğin:

``` pythonsozluk = {"ad": "Ali", "soyad": "Yılmaz", "yas": 30}ogeler = sozluk.items()print(ogeler)```Bu kod, ("ad", "Ali"), ("soyad", "Yılmaz") ve ("yas", 30) tuple'larından oluşan bir liste döndürür.

Yukarıdaki yöntemlerin yanı sıra, sözlükler üzerinde yineleme yapmak için listenin diğer yöntemleri kullanılabilir. Bunlar arasında for döngüsü, while döngüsü ve list comprehension bulunur. Bu yöntemlerden hangisinin kullanılacağı, sözlükteki öğelerin yapısına ve istenen sonuca bağlı olarak seçilir.

Python'da sözlüklerin kullanımı oldukça esnektir ve yukarıda bahsedilen yöntemlerin kullanımı sayesinde, sözlüklerdeki verileri hızlı ve etkili bir şekilde kullanabilirsiniz.