заменить значения словаря на элементы из списка в python - PullRequest
0 голосов
/ 17 ноября 2018

У меня есть список: operation = [5,6] и словарь dic = {0: None, 1: None}

И я хочу заменить каждое значение dic на значения операции.

Я пробовал это, но это неКажется, не работает.

operation = [5,6]

for i in oper and val, key in dic.items():
        dic_op[key] = operation[i]

У кого-нибудь есть идея?

Ответы [ 3 ]

0 голосов
/ 17 ноября 2018

Другой вариант, может быть:

operation = [5,6]
dic = {0: None, 1: None}

for idx, val in enumerate(operation):
  dic[idx] = val

dic #=> {0: 5, 1: 6}

Подробности использования индекса здесь: Доступ к индексу в циклах for?

0 голосов
/ 17 ноября 2018

Используя zip в Python 3.7+, вы можете просто сделать:

operation = [5,6]
dic = {0: None, 1: None}

print(dict(zip(dic, operation)))
# {0: 5, 1: 6}
0 голосов
/ 17 ноября 2018

zip метод выполнит эту работу

operation = [5, 6]
dic = {0: None, 1: None}

for key, op in zip(dic, operation):
  dic[key] = op

print(dic)   # {0: 5, 1: 6}  

Приведенное выше решение предполагает, что dic упорядочено для того, чтобы позиция элемента в operation была совмещена с клавишамив dic.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...