Прежде чем мы погрузимся в KeyError в , важно знать, как настроен словарь в Python. В этой статье будут рассмотрены следующие указатели:
Словарь на Python
В Концепция в Python - это случайный набор значений, в котором хранятся значения данных, такие как карта. В отличие от других типов данных, которые содержат только одно значение в качестве элемента. Он содержит пару ключ: значение.
Ключевое значение делает его более эффективным. Двоеточие разделяет пару «ключ-значение», а «запятая» разделяет каждый ключ. Этот словарь в Python работает аналогично обычному словарю. Соответствующие ключи должны быть уникальными и иметь неизменяемые типы данных, такие как строки, целые числа и кортежи, но ключи и значения могут повторяться и могут быть любого типа. Могут быть ключи, которые представляют собой строки, относящиеся к числам, и наоборот.
Давайте посмотрим, как работает словарь, на примере, приведенном ниже.
# Создание пустого словаря Dict = {} print ('Null dict:') print (Dict) # Создание словаря с помощью целочисленных ключей Dict = {1: 'Fun', 2: 'And', 3: 'Frolic'} print ( 'nDictionary с использованием целочисленных ключей:') print (Dict) # Создание словаря со смешанными клавишами Dict = {'Name': 'Arun', 1: [12, 23, 34, 45]} print ('nDictionary с использование смешанных ключей: ') print (Dict) # Создание словаря с помощью метода dict () Dict = dict ({1:' немецкий ', 2:' язык ', 3:' забавно '}) print (' nDictionary with использование dict (): ') print (Dict) # Словарь, содержащий каждый элемент в виде пары Dict = dict ([(1,' Hello '), (2,' Bye ')]) print (' nDictionary с каждым элемент как пара: ') print (Dict)
KeyError в Python
Поскольку нам ясно, что такое словарь в Python и как он работает. Теперь давайте посмотрим, в чем заключается основная ошибка. KeyError в Python возникает, когда вы пытаетесь получить доступ к ключу, которого нет в словаре.
Логика сопоставления - это структура данных, которая сопоставляет один набор данных значимым другим. Следовательно, это ошибка, которая возникает, когда к отображению обращаются, но не находят. Это знакомо с ошибкой поиска, когда семантическая ошибка будет указана, поскольку ключ, который вы ищете, не может быть найден в ее памяти. Это можно лучше проиллюстрировать в приведенном ниже коде.
как сделать добавление в Java
Здесь я пытаюсь получить доступ к ключу под названием «D», которого нет в словаре. Следовательно, ошибка возникает, как только обнаруживается исключение. Однако остальные ключи, присутствующие в словаре, которые напечатаны правильно, имеют точные значения, соответствующие им.
// возраст = {'A': 30, 'B': 28, 'C': 33} print (age ['A']) print (age ['B']) print (age ['C']) print (age ['D']) //
Механизм обработки KeyError в Python
Любой, кто сталкивается с KeyError, может справиться с этим ответственно. Это его умение учитывать все возможные входы в определенную программу и успешно обрабатывать любые сомнительные записи.
В зависимости от вашего варианта использования некоторые из этих решений могут быть лучше или могут не быть точным решением, которое вы ищете. Тем не менее, конечная цель - остановить появление неожиданных исключений из ключевых ошибок.
Если ошибка извлечена из словаря в вашем собственном коде, вы можете использовать .get () для извлечения значения по указанному ключу или значения по умолчанию. Давайте посмотрим на образец.
// Список фруктов и их цены. while (1): fruit = {'Яблоко': 300, 'Папайя': 128, 'Киви': 233} fruit = input ('Получить цену:') fruit1 = fruit.get (fruit) if fruit1: print ( f '{fruit} равен {fruit1} рупиям.') else: print (f 'Стоимость {fruit} неизвестна.')
Общее решение KeyError
Обычное решение состоит в том, что вы всегда можете использовать блок try-except для решения таких проблем, подняв соответствующий код и предоставив решение для резервного копирования. Ознакомьтесь с приведенным ниже кодом для большей ясности.
// while (1): age = {'Jophi': 12, 'Rao': 20, 'Irvin': 16} person = input ('Получить возраст для:') try: print (f '{person} is { age [person]} лет. ') except KeyError: print (f' Возраст {person} неизвестен. ') //
На этом мы подошли к концу статьи о KeyError в Python. Я надеюсь, что эта статья была информативной и пролила свет на исключение Python KeyError и способы его возникновения. Кроме того, теперь вы можете знать, что если проблема заключается в поиске ключа словаря в вашем собственном коде, вы можете переключиться с доступа к ключу непосредственно в словаре на использование метода .get () с возвращаемым значением по умолчанию.
Если проблема не в вашем собственном коде, используйте блок try-except для лучшего управления потоком кода.
Чтобы получить более глубокие знания о Python и его различных приложениях, вы можете для онлайн-обучения с круглосуточной поддержкой и пожизненным доступом.
Есть вопрос к нам? Упомяните их в разделе комментариев «KeyError в Python», и мы свяжемся с вами.