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ö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.