Как перебирать словарь в Python (ключи, значения и элементы)
Узнайте, как выполнять цикл или перебирать словарь Python. Откройте для себя методы перебора ключей, значений и пар «ключ-значение» с помощью понятных и работоспособных примеров.
Обзор
Перебор словарей является фундаментальной задачей в программировании на Python, поскольку словари широко используются для хранения данных «ключ-значение», таких как записи базы данных, полезные данные API и параметры конфигурации. Python предоставляет несколько интуитивно понятных встроенных методов для перемещения по словарям в зависимости от того, нужны ли вам ключи, значения или и то, и другое. Понимание этих методов имеет решающее значение для написания чистого, эффективного и читаемого кода.
Самый распространенный способ одновременного прохода по ключам и значениям — использование метода `.items()`. Этот метод возвращает объект представления, содержащий кортежи пар ключ-значение, которые можно легко распаковать непосредственно внутри оператора цикла for. Обычно это предпочтительнее, чем перебирать ключи и искать значения вручную, поскольку это более читабельно и более эффективно.
Если вам нужны только ключи, вы можете выполнить цикл непосредственно по самому словарю или явно использовать метод `.keys()`. Для перебора только значений Python предоставляет метод `.values()`. Оба этих объекта представления являются динамическими, отражают любые изменения, внесенные в словарь, и поддерживают проверку членства с помощью оператора in.
Код и вывод выполнения
Этот код демонстрирует перебор ключей, значений и пар ключ-значение словаря.
user = {"username": "alice", "role": "admin", "active": "True"}
# 1. Iterate over keys and values using items()
print("--- Keys and Values ---")
for key, value in user.items():
print(f"{key}: {value}")
# 2. Iterate over keys only (default behavior)
print("\n--- Keys Only ---")
for key in user:
print("Key:", key)
# 3. Iterate over values only
print("\n--- Values Only ---")
for val in user.values():
print("Value:", val)--- Keys and Values ---
username: alice
role: admin
active: True
--- Keys Only ---
Key: username
Key: role
Key: active
--- Values Only ---
Value: alice
Value: admin
Value: TrueПошаговая реализация
- Используйте user.items() в цикле for для одновременного извлечения и распаковки ключей и значений.
- Выполните цикл непосредственно по словарю (или вызовите .keys()), чтобы перебирать только ключи.
- Используйте .values() для изоляции и перебора значений словаря.
Часто задаваемые вопросы
Сохраняется ли порядок вставки при переборе словаря?
Да, начиная сPython 3.7+, словари гарантированно поддерживают порядок вставки ключей.
Можете ли вы изменить словарь, перебирая его?
Нет, изменение ключей (добавление или удаление) во время итерации приведет к возникновению ошибки RuntimeError. Вместо этого измените копию ключей или значений.
Связанные темы
Узнайте, как создать словарь в Python. Понимание синтаксиса букв, конструктора dict, понимания dict и инициализаторов ключей-значений.
Как добавить и обновить ключи в словаре PythonУзнайте, как добавлять элементы или обновлять пары «ключ-значение» в словаре Python. Изучите квадратные скобки, метод обновления и параметры оператора слияния.
Рекомендуемые ресурсы Python
Расширьте свои знания с помощью соответствующих интерактивных руководств, шпаргалок и сравнений кода.
Циклы Python
Узнайте, как использовать циклы Python для перебора данных. Освойте циклы for, while, прерывание, продолжение и лучшие практики работы с циклами с помощью интерактивных примеров.
Шпаргалка по словарным методам Python
Изучите словарные методы Python. Полное справочное руководство по вставке, извлечению, обновлению и проверке пар ключ-значение.
Python против JavaScript: какой язык программирования лучше?
Всестороннее сравнение Python и JavaScript. Изучите синтаксические различия, производительность, варианты использования (серверная и клиентская части) и примеры кодирования.