Python'da KeyError nedir? Sözlük ve İşlenmesi

Bu makale size Python'daki KeyError'ı Sözlük'te nasıl çözeceğiniz konusunda ayrıntılı ve kapsamlı bir bilgi sağlayacaktır.

KeyError'a dalmadan önce Python'da bir sözlüğün nasıl kurulduğunu bilmek önemlidir. Bu makalede aşağıdaki işaretçiler tartışılacaktır:



Python'da Sözlük

Python'daki kavram, bir harita gibi veri değerlerini depolayan rastgele bir değerler koleksiyonudur. Öğe olarak yalnızca tek bir değeri tutan diğer veri türlerinden farklıdır. Anahtar: değer çiftini tutar.



Python

Anahtar değer, onu daha verimli hale getirir. İki nokta üst üste, bir anahtar ve değer çiftini, bir 'virgül' her anahtarı ayırır. Python'daki bu sözlük normal bir sözlüğe benzer şekilde çalışır. İlgili anahtarlar benzersiz ve dizeler, tam sayılar ve dizeler gibi değişmez veri türlerinden olmalıdır, ancak anahtar / değer çiftleri yinelenebilir ve herhangi bir türde olmasına izin verilir. Sayılara atıfta bulunan dizeler olan anahtarlar olabilir ve bunun tersi de geçerlidir.



Aşağıdaki kodlanmış örnek üzerinden bir sözlüğün nasıl çalıştığına bakalım.

# Boş bir Sözlük Oluşturma Dict = {} print ('Null dict:') print (Dict) # Tamsayı Tuşlarıyla Sözlük Oluşturma Dict = {1: 'Fun', 2: 'And', 3: 'Frolic'} print ( 'Tamsayı Anahtarlarının kullanımıyla nDictionary:') print (Dict) # Karışık Anahtarlarla Sözlük Oluşturma Dict = {'Name': 'Arun', 1: [12, 23, 34, 45]} print ('nDictionary with the Karışık Anahtarların kullanımı: ') print (Dict) # dict () yöntemiyle Sözlük Oluşturma Dict = dict ({1:' Almanca ', 2:' dil ', 3:' eğlencelidir '}) print (' nDictionary with dict () kullanımı: ') print (Dict) # Her bir öğeyi bir Çift olarak içeren bir Sözlük Dict = dict ([(1,' Merhaba '), (2,' Güle güle ')]) baskı (' nD çift ​​olarak öğe: ') print (Dict)

Python'da KeyError

Python'da bir sözlüğün ne olduğu ve nasıl çalıştığı konusunda net olduğumuz için. Şimdi önemli bir hatanın ne olduğunu görelim. Python'daki KeyError, sözlükte olmayan bir anahtara erişmeye çalıştığınızda ortaya çıkar.



Eşleme mantığı, bir veri kümesini önemli diğerleriyle eşleyen bir veri yapısıdır. Bu nedenle, eşlemeye erişildiğinde ve bulunamadığında ortaya çıkan bir hatadır. Anlambilimsel hatanın, aradığınız anahtarın hafızasında bulunmaması nedeniyle belirtildiği bir arama hatasına aşinadır. Bu, aşağıdaki kodda daha iyi gösterilebilir.

dizidir java'da bir nesnedir

Burada sözlükte olmayan “D” adlı bir anahtara erişmeye çalışıyorum. Bu nedenle hata, bir istisna bulduğu anda atılır. Bununla birlikte, sözlükte bulunan ve doğru yazdırılan kalan tuşlar kendilerine karşılık gelen tam değerlere sahiptir.

// yaş = {'A': 30, 'B': 28, 'C': 33} baskı (yaş ['A']) baskı (yaş ['B']) baskı (yaş ['C']) baskı (yaş ['D']) //

Python'da KeyError için İşleme Mekanizması

Bir KeyError ile karşılaşan herkes bunu sorumlu bir şekilde halledebilir. Belli bir programın tüm olası girdilerini dikkate almak ve herhangi bir şüpheli girişi başarıyla ele almak onun becerisidir.

Kullanım durumunuza bağlı olarak, bu çözümlerden bazıları daha iyi olabilir veya aradığınız tam çözüm olmayabilir. Yine de nihai amaç, beklenmedik önemli hata istisnalarının ortaya çıkmasını önlemektir.

Bir sözlükten kendi kodunuzda bir hata getirilirse, belirtilen anahtardaki değeri veya varsayılan bir değeri çıkarmak için .get () öğesini kullanabilirsiniz. Bir örneğe bakalım.

// Meyvelerin listesi ve fiyatları. while (1): meyveler = {'Elma': 300, 'Papaya': 128, 'Kivi': 233} meyve = girdi ('Fiyatını al:') meyve1 = meyveler.get (meyve), meyve1: baskı ( f '{meyve}, {meyve1} rupidir.') başka: baskı (f '{meyve}' nin maliyeti bilinmiyor. ')

KeyError'a Genel Bir Çözüm

Olağan çözüm, uygun kodu yükselterek ve bir yedekleme çözümü sağlayarak bu tür sorunların üstesinden gelmek için her zaman deneme hariç bloğunu kullanabilmenizdir. Daha fazla netlik için aşağıdaki koda göz atın.

// while (1): yaş = {'Jophi': 12, 'Rao': 20, 'Irvin': 16} kişi = input ('Yaşını alın:') try: print (f '{kişi} { yaş [kişi]} yaşında. ') KeyError hariç: print (f' {kişi} 'nin yaşı bilinmiyor.') //

Bununla, Python'daki bu KeyError makalesinin sonuna geliyoruz. Umarım bu makale Python’un KeyError istisnasına ve nasıl ortaya konulabileceğine ışık tutmak için bilgilendirici olmuştur. Ayrıca, sorunun kendi kodunuzdaki bir sözlük tuşu araması olması durumunda, anahtara doğrudan sözlükten erişmekten, varsayılan dönüş değeri olan .get () yöntemini kullanmaya geçebileceğinizi biliyor olabilirsiniz.

Sorun kendi kodunuzdan gelmiyorsa, kodunuzun akışını daha iyi kontrol etmek için dene-hariç bloğunu kullanın.

Python hakkında çeşitli uygulamalarının yanı sıra derinlemesine bilgi edinmek için şunları yapabilirsiniz: 7/24 destek ve ömür boyu erişim ile canlı çevrimiçi eğitim için.

Bizim için bir sorunuz mu var? 'Python'da KeyError' yorumlar bölümünde bunlardan bahsedin, size geri döneceğiz.