Sözlük girişi Python Sözdizimi ve Örnek ile

Sözlük nedir? Python?

A Sözlük girişi Python anahtar-değer çiftlerini tutan sıralanmamış ve değiştirilebilir veri değerleri koleksiyonudur. Sözlükteki her anahtar-değer çifti, anahtarı ilişkili değerine eşler ve onu daha optimize hale getirir. Python'da bir Sözlük, süslü parantezler({}) kullanılarak virgülle ayrılmış bir anahtar-değer çiftleri listesi eklenerek bildirilir. Python Sözlük iki öğeye ayrılır: Anahtarlar ve Değerler.

  • Anahtarlar tek bir unsur olacak
  • Değerler bir liste veya liste içindeki liste, sayılar vb. olabilir.

sözdizimi Python Sözlük

Dict = { ' Tim': 18,  xyz,.. }

Sözlük, süslü parantez içinde listelenir, bu süslü parantezlerin içinde anahtarlar ve değerler bildirilir. Her anahtar, değerinden iki nokta üst üste (:) ile ayrılırken, virgüller her öğeyi ayırır.

sözdizimi Python Sözlük

Sözlük Anahtarlarının Özellikleri

Sözlük tuşlarını kullanırken iki önemli nokta vardır

  • Anahtar başına birden fazla girişe izin verilmez (yinelenen anahtara izin verilmez)
  • Sözlükteki değerler herhangi bir türde olabilir, anahtarların ise sayılar gibi değişmez olması gerekir. Tuplelerin
  • Sözlük anahtarları büyük/küçük harfe duyarlıdır - Aynı anahtar adı ancak farklı durumlar, içinde farklı anahtarlar olarak değerlendirilir. Python sözlükleri.

Python 2 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}   
print (Dict['Tiffany'])

Python 3 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}   
print((Dict['Tiffany']))
  • Kodda “Dict” sözlük adımız var
  • Adın “Anahtarlar”, yaşın ise “değer” olduğu sözlükte kişinin adını ve yaşını belirttik.
  • Şimdi kodu çalıştırın
  • Sözlükten Tiffany'nin yaşını alır.

Python Sözlük Yöntemleri

Sözlük kopyalanıyor

Ayrıca sözlüğün tamamını yeni bir sözlüğe kopyalayabilirsiniz. Örneğin, burada orijinal sözlüğümüzü yeni sözlük adı olan “Boys” ve “Girls” ile kopyaladık.

Python 2 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}	
studentX=Boys.copy()
studentY=Girls.copy()
print studentX
print studentY

Python 3 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}	
studentX=Boys.copy()
studentY=Girls.copy()
print(studentX)
print(studentY)
  • Kız ve erkek çocukların adlarını ve yaşlarını bir arada içeren orijinal sözlüğe (Dict) sahibiz
  • Ancak erkek listesinin kız listesinden ayrı olmasını istiyoruz, bu nedenle erkek ve kız unsurlarını ayrı bir sözlük adı altında "Erkekler" ve "Kızlar" olarak tanımladık.
  • Şimdi yine "öğrenci X" ve "öğrenci Y" gibi yeni sözlük adları oluşturduk; burada erkek sözlüğünün tüm anahtarları ve değerleri öğrenci X'e kopyalanır ve kızlar öğrenci Y'ye kopyalanır.
  • Artık kimin erkek kimin kız olduğunu kontrol etmek için ana sözlükteki (Dict) tüm listeye bakmanıza gerek yok, sadece erkek listesi istiyorsanız öğrenci X'i ve kız listesi istiyorsanız ÖğrenciY'yi yazdırmanız yeterli.
  • Yani öğrenci X ve öğrenci Y sözlüğünü çalıştırdığınızda, "erkekler" ve "kızlar" sözlüğünde bulunan tüm unsurları ayrı ayrı verecektir.

Sözlük Güncelleniyor

Ayrıca mevcut bir girişe yeni bir giriş veya anahtar/değer çifti ekleyerek ya da mevcut bir girişi silerek sözlüğü güncelleştirebilirsiniz. Buradaki örnekte mevcut sözlüğümüze “Sarah” adında bir isim daha ekleyeceğiz.

Python 2 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
Dict.update({"Sarah":9})
print Dict

Python 3 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
Dict.update({"Sarah":9})
print(Dict)
  • Mevcut sözlüğümüz “Dict”in adı “Sarah” değil.
  • Sarah'ı mevcut sözlüğümüze eklemek için Dict.update yöntemini kullanıyoruz
  • Şimdi kodu çalıştırın, mevcut sözlüğümüze Sarah'yı ekler

Anahtarları sözlükten sil

Python dictionary size sözlük listesinden herhangi bir öğeyi silme özgürlüğü verir. Diyelim ki Charlie ismini listede istemiyorsunuz, bu yüzden aşağıdaki kodla anahtar öğeyi kaldırabilirsiniz.

Python 2 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
del Dict ['Charlie']
print Dict

Python 3 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
del Dict ['Charlie']
print(Dict)

Bu kodu çalıştırdığınızda, sözlük listesini Charlie olmadan yazdırmalıdır.

  • Del Dict kodunu kullandık
  • Kod yürütüldüğünde Charlie'yi ana sözlükten silmiş oldu

Sözlük öğeleri() Yöntemi

items() yöntemi, sözlükteki tanımlama grubu çiftlerinin (Anahtarlar, Değer) bir listesini döndürür.

Python 2 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print "Students Name: %s" % Dict.items()

Python 3 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print("Students Name: %s" % list(Dict.items()))
  • Dict'imiz için code items() yöntemini kullanıyoruz.
  • Kod yürütüldüğünde sözlükteki öğelerin (anahtarlar ve değerler) bir listesini döndürür

Belirli bir anahtarın sözlükte zaten mevcut olup olmadığını kontrol edin

Belirli bir liste için alt sözlüğümüzün ana sözlükte olup olmadığını da kontrol edebilirsiniz. Burada “Erkekler” ve “Kızlar” olmak üzere iki alt sözlüğümüz var, şimdi de Boys sözlüğümüzün ana “Dikt”imizde var olup olmadığını kontrol etmek istiyoruz. Bunun için for döngüsü yöntemini else if yöntemiyle birlikte kullanıyoruz.

Python 2 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
for key in Boys.keys():
    if key in Dict.keys():
        print True
    else:       
        print False


Python 3 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
for key in list(Boys.keys()):
    if key in list(Dict.keys()):
        print(True)
    else:       
        print(False)
  • The döngü için kodda Boys anahtarları için ana sözlükteki her anahtarı kontrol eder
  • Ana sözlükte mevcutsa, doğru olarak yazdırılmalıdır, aksi halde yanlış olarak yazdırılmalıdır.
  • Kodu çalıştırdığınızda, "Boys" sözlüğümüzde üç öğe olduğundan, üç kez "True" yazacaktır.
  • Bu, ana sözlüğümüzde (Dict) “Boys” kelimesinin var olduğunu gösterir.

Sözlüğü Sıralama

Sözlükte öğeleri de sıralayabilirsiniz. Örneğin sözlüğümüzdeki elemanların isimlerini alfabetik olarak yazdırmak istiyorsak for döngüsünü kullanmamız gerekir. Sözlüğün her öğesini buna göre sıralayacaktır.

Python 2 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
Students = Dict.keys()
Students.sort()
for S in Students:
      print":".join((S,str(Dict[S])))

Python 3 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
Students = list(Dict.keys())
Students.sort()
for S in Students:
      print(":".join((S,str(Dict[S]))))
  • Sözlüğümüz için Students değişkenini “Dict” olarak tanımladık.
  • Daha sonra sözlüğümüzün içindeki öğeyi sıralayacak Students.sort kodunu kullanırız.
  • Ancak sözlükteki her bir öğeyi sıralamak için, S değişkenini bildirerek for döngüsünü çalıştırırız.
  • Şimdi, kodu çalıştırdığımızda, for döngüsü sözlükteki her bir öğeyi çağıracak ve dizeyi ve değeri bir sırayla yazdıracaktır.

Python Sözlük yerleşik İşlevleri

Sözlük len() Yöntemi

len() işlevi sözlükteki çiftlerin sayısını verir.

Örneğin,

Python 2 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print "Length : %d" % len (Dict)

Python 3 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print("Length : %d" % len (Dict))

Len (Dict) fonksiyonu çalıştırıldığında sözlüğümüzde dört öğe olduğundan çıktıyı “4” olarak verir.

Değişken Türleri

Python ayrılmış bellek alanının açıkça beyan edilmesini gerektirmez; otomatik olarak gerçekleşir. Değişkene atanan değerler “=” eşittir işareti kullanılır. Değişken türünü belirleyen kod “%type (Dict).”

Python 2 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print "variable Type: %s" %type (Dict)

Python 3 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print("variable Type: %s" %type (Dict))
  • Değişken türünü bilmek için %type kodunu kullanın
  • Kod yürütüldüğünde değişken türünün bir sözlük olduğunu söyler

Python cmp() Yöntemini Listele

Karşılaştırma yöntemi cmp() kullanılır Python İki sözlüğün değerlerini ve anahtarlarını karşılaştırmak için. Her iki sözlük de eşitse yöntem 0 değerini döndürürse, dic1 > dict1 ise 2 ve dict1 < dict1 ise -2 değerini döndürür.

Python 2 Örnek

Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}	
print cmp(Girls, Boys)

Python 3 Örnek

cmp is not supported in Python 3
  • İki sözlük adımız var: “Erkekler” ve “Kızlar.”
  • “cmp(Kızlar, Erkekler)” kodunda hangisini önce bildirirseniz sözlük 1 olarak kabul edilecektir. Bizim durumumuzda ilk olarak “Kızlar”ı belirttiğimiz için sözlük 1, erkekler de sözlük 2 olarak değerlendirilecektir.
  • Kod çalıştırıldığında -1 çıktısı verir, bu bizim sözlüğümüz 1'in sözlük 2'den küçük olduğunu gösterir.

Sözlük Dizini(dict)

Str() yöntemiyle bir sözlüğü yazdırılabilir dize biçiminde yapabilirsiniz.

Python 2 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print "printable string:%s" % str (Dict)

Python 3 Örnek

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print("printable string:%s" % str (Dict))
  • % str (Dict) kodunu kullanın
  • Sözlük öğelerini yazdırılabilir bir dize biçimine döndürür

İşte tüm Sözlük Yöntemlerinin listesi

Yöntem Açıklama Sözdizimi
kopya () Sözlüğün tamamını yeni sözlüğe kopyala dict.copy()
Güncelleme() Mevcut bir girişe yeni bir giriş veya anahtar/değer çifti ekleyerek ya da mevcut bir girişi silerek sözlüğü güncelleyin. Dict.update([diğer])
öğeler () Sözlükteki tanımlama grubu çiftlerinin (Anahtarlar, Değer) listesini döndürür. sözlük.items()
çeşit() Öğeleri sıralayabilirsiniz sözlük.sort()
len () Sözlükteki çiftlerin sayısını verir. len(dikte)
cmp() İki sözlüğün değerlerini ve anahtarlarını karşılaştırın cmp(dict1, dict2)
Str() Yazdırılabilir dize biçiminde bir sözlük oluşturma Str(dict)

Sözlükleri Birleştirme

Burada verilen iki sözlüğün tek bir sözlükte nasıl birleştirileceğini anlayacağız.

Aşağıda gösterildiği gibi iki sözlüğüm var:

Sözlük1 : my_dict1

my_dict1 = {"username": "XYZ", "email": "xyz@gmail.com", "location":"Mumbai"}

Sözlük 2 : my_dict2

my_dict2 = {"firstName" : "Nick", "lastName": "Price"}

Bu sözlüklerin ikisini de my_dict1 ve my_dict2 birleştirelim ve namemy_dict ile tek bir sözlük oluşturalım.

update() yöntemini kullanarak iki sözlüğü birleştirme

update() yöntemi bir sözlüğü diğeriyle birleştirmemize yardımcı olacaktır. Örnekte my_dict1'i my_dict2 ile güncelleyeceğiz. update() yöntemini kullandıktan sonra my_dict1, aşağıda gösterildiği gibi my_dict2'nin içeriğine sahip olacaktır:

my_dict1 = {"username": "XYZ", "email": "xyz@gmail.com", "location":"Mumbai"}

my_dict2 = {"firstName" : "Nick", "lastName": "Price"}

my_dict1.update(my_dict2)

print(my_dict1)

Çıktı:

{'username': 'XYZ', 'email': 'xyz@gmail.com', 'location': 'Mumbai', 'firstName': 'Nick', 'lastName': 'Price'}

** yöntemini kullanarak sözlükleri birleştirme (Başlangıçtan) Python 3.5'ten itibaren)

**'ya Kwargs denir Pythonve birlikte çalışacak Python sürüm 3.5+. ** kullanarak iki sözlüğü birleştirebiliriz ve bu, birleştirilmiş sözlüğü döndürür. Değişkenin önünde ** kullanılması, değişkeni tüm içeriğiyle değiştirecektir.

Burada iki dizini birleştirmek için ** kullanmanın çalışan bir örneği verilmiştir.

my_dict1 = {"username": "XYZ", "email": "xyz@gmail.com", "location":"Mumbai"}

my_dict2 = {"firstName" : "Nick", "lastName": "Price"}

my_dict =  {**my_dict1, **my_dict2} 

print(my_dict)

Çıktı:

{'username': 'XYZ', 'email': 'xyz@gmail.com', 'location': 'Mumbai', 'firstName': 'Nick', 'lastName': 'Price'}

Sözlük Üyelik Testi

Bir anahtarın sözlük içinde mevcut olup olmadığını test edebilirsiniz. Bu test yalnızca bir sözlüğün anahtarı üzerinde gerçekleştirilebilir, değer üzerinde gerçekleştirilemez. Üyelik testi şu şekilde yapılır: in anahtar kelime. Anahtarı sözlükte kontrol ettiğinizde in anahtar kelime, anahtar mevcutsa ifade doğru, yoksa yanlış değerini döndürür.

İşte üye gemi testini bir sözlükte gösteren bir örnek.

my_dict = {"username": "XYZ", "email": "xyz@gmail.com", "location":"Mumbai"}
print("email" in my_dict)
print("location" in my_dict)
print("test" in my_dict)

Çıktı:

True
True
False

ÖZET

  • Bir programlama dilindeki sözlükler, bir şekilde bağlantılı bilgileri depolamak için kullanılan bir tür veri yapısıdır.
  • Python Sözlük, Anahtarlar ve Değerler olmak üzere iki öğe halinde tanımlanır.
  • Sözlükler bilgileri belirli bir sırayla saklamaz, dolayısıyla bilgilerinizi girdiğiniz sırayla geri alamayabilirsiniz.
  • Anahtarlar tek bir unsur olacak
  • Değerler bir liste veya liste içindeki liste, sayılar vb. olabilir.
  • Anahtar başına birden fazla girişe izin verilmez (yinelenen anahtara izin verilmez)
  • Sözlükteki değerler herhangi bir türde olabilir; anahtarların ise sayılar, tuple'lar veya dizeler gibi değişmez olması gerekir.
  • Sözlük anahtarları büyük/küçük harfe duyarlıdır - Aynı anahtar adı ancak farklı durumlar, içinde farklı anahtarlar olarak değerlendirilir. Python sözlükleri.