← Все вопросы
Как перебрать словарь в цикле — по ключам, значениям и парам?
17
Есть словарь d = {'a': 1, 'b': 2}. Запутался, как правильно по нему пройтись. Когда нужны только ключи, когда значения, а когда и то и то сразу?
3 ответа
28
✓ Принятый ответ — помог автору
Три варианта под три задачи:
d = {'a': 1, 'b': 2}
for k in d: # по ключам (то же, что d.keys())
print(k)
for v in d.values(): # по значениям
print(v)
for k, v in d.items(): # по парам ключ-значение
print(k, v)
Простой for x in d идёт именно по ключам — это самая частая ошибка, когда ждут значения. Если нужны и ключ, и значение — почти всегда хочется .items().
jen skor вот про `for x in d` по ключам — реально путался, спасибо 🙏 · 17 месяцев назад
Сергей Яковлев автор: то что надо · 17 месяцев назад
6
.items() для пар, .values() для значений, по ключам — просто for k in d.
4
Порядок при переборе — это порядок вставки (Python 3.7+), так что перебор предсказуемый, не как раньше.
Ваш ответ
Войдите, чтобы ответить на вопрос.