Как сделать из двух списков один словарь
Есть два списка, в одном из них хранится ключ будущего словаря, а в другом значение. Пример:
ls_keys = ['V1', 'V2', 'V3', 'V4']
ls_values = ['value1', 'value2', 'value3', 'value4']
Надо преобразовать эти списки в один словарь, чтобы это выглядело так:
res_d = {
'V1': 'value1',
'V2': 'value2',
'V3': 'value3',
'V4': 'value4',
}
Как это сделать, помогите пожалуйста.
Ответы (2 шт):
Автор решения: Vladislav
→ Ссылка
ls_keys = ['V1', 'V2', 'V3', 'V4']
ls_values = ['value1', 'value2', 'value3', 'value4']
# Объединяем списки в список кортежей
zipped_ls = zip(ls_keys, ls_values)
# Создаем словарь
res_d = dict(zipped_ls)
print(res_d)
# Выведет:
# {'V1': 'value1', 'V2': 'value2', 'V3': 'value3', 'V4': 'value4'}
Автор решения: VanoKi
→ Ссылка
Еще можно так, не используя zip:
- Используя генератор словарей:
d = {i:j for i in ls_keys for j in ls_values}
print(d)
- "традиционные" циклы, если генератор по каким либо причинам не нравится/не подходит:
d1 = {}
for i in ls_keys:
for j in ls_values:
d1[i] = j
print(d1)