Как работает dict.items()?
Вот сколько работал с dict.items() - никогда вопросов не возникало, потому как всегда предполагал, что он .items() всегда должен возвращать пару: ключ, значение.
print({1: 2}.items()) # dict_items([(1, 2)])
Почему в цикле можно писать:
for k, v in {1: 2}.items()
А так нельзя:
k, v = {1: 2}.items()
Вроде же как по первому коду видно что возвращается кортеж пар: ключ и значение. Почему он тогда не распаковывается? Или я что-то недопонял тут?
Ответы (1 шт):
Автор решения: Bekova Deniza
→ Ссылка
dict.items() возвращает не пару ключ/значение, а список кортежей вида ключ/значение. Ты пытаешь один элемент (список кортежей), записать в две переменные.
что бы сделать то, что ты хочешь, надо написать что то вроде:
k, v = [], []
for key, value in {1:2}.items():
k.append(key)
v.append(value)