Как обращаться к словарю в python?
Курс на степике, вторая неделя, там всё через списки обьясняли а тут сразу фигурные скобки и доступ по ключу, препод в чате молчит третий день.
Ваш вопрос
Курс на степике, вторая неделя, там всё через списки обьясняли а тут сразу фигурные скобки и доступ по ключу, препод в чате молчит третий день.
Обращаться к словарю в python можно несколькими способами, и выбор зависит от того, что нужно сделать: если известно точно, что ключ есть в словаре, проще всего использовать квадратные скобки, словарь['ключ'], но если такого ключа не существует, python сразу выбросит исключение KeyError с именем отсутствующего ключа в тексте ошибки, и это самая частая причина падения программ у новичков, потому что ключ может отсутствовать из-за опечатки, лишнего пробела, разного регистра букв, ведь 'Имя' и 'имя' для python это два совершенно разных ключа, либо ключа реально ещё нет, потому что данные ещё не загрузились или в них другая структура, чем ожидалось. Более безопасный вариант - метод get, словарь.get('ключ'), который в случае отсутствия ключа не роняет программу, а возвращает None, и вторым аргументом ему можно передать своё значение по умолчанию, например словарь.get('возраст', 0), чтобы вместо None приходил ноль. Если нужно не просто прочитать, а обойти весь словарь, есть три основных инструмента: цикл for key in словарь пробегает по ключам, словарь.items() сразу отдаёт пары ключ и значение вместе, что удобно распаковывать в for key, value in словарь.items(), а словарь.values() отдаёт только значения без ключей вообще. Ещё стоит помнить, что начиная с python 3.7 порядок ключей в словаре гарантированно совпадает с порядком добавления, а в более старых версиях такой гарантии официально не было, хотя на практике часто совпадало и там.
4.20
Квадратные скобки: словарь['ключ'] - упадёт, если ключа нет. Хочешь без падения - словарь.get('ключ'), вернёт None или твоё значение по умолчанию. KeyError почти всегда из-за опечатки или лишнего пробела в названии ключа. Проверяй ещё регистр букв, python их различает.
Пока нет премиум-вопросов в подборке
Не нашли то, что искали?
Задайте свой вопрос
Лучший ответ
4o
4o
Как обращаться к словарю в python?
Обращение по ключу Самый частый способ - квадратными скобками: словарь['ключ']. Если такого ключа нет, python выбросит KeyError.
Безопасный способ через get Метод словарь.get('ключ') вернёт None вместо ошибки, если ключа нет, а можно и задать своё значение по умолчанию вторым аргументом.
Перебор словаря Через for key in словарь идёт перебор ключей, через словарь.items() сразу пары ключ и значение, через словарь.values() - только значения.
Частая причина KeyError Обычно дело в опечатке в названии ключа, лишнем пробеле или разном регистре букв, python видит 'Имя' и 'имя' как два разных ключа.