Строка не найдена - PullRequest
       2

Строка не найдена

0 голосов
/ 31 декабря 2018

Вопрос удален.Пожалуйста, не беспокойтесь.

Ответы [ 2 ]

0 голосов
/ 31 декабря 2018

Для новых версий Python вы можете создать новый словарь с dict() + zip():

dict(zip(dic, mylist))
# {'Bag': 0.2577, 'Door': 0.2311, 'Duck': 0.6393, 'Car': 0.159, 'Girl': 0.6135}

Или обновить словарь вplace:

for k, v in zip(dic, mylist):
    dic[k] = v

print(dic)
# {'Bag': 0.2577, 'Door': 0.2311, 'Duck': 0.6393, 'Car': 0.159, 'Girl': 0.6135}

Но это предполагает упорядоченные словари для Python3.6 + .Если вы используете более низкие версии, в которых есть неупорядоченные словари , вы можете использовать collections.OrderedDict, чтобы запомнить порядок вставки ключей.

Пример OrderedDict:

from collections import OrderedDict

mylist = [0.2577, 0.2311, 0.6393, 0.159, 0.6135]

items = ['Bag', 'Door', 'Duck', 'Car', 'Girl']

d = OrderedDict(zip(items, mylist))

print(d)
# OrderedDict([('Bag', 0.2577), ('Door', 0.2311), ('Duck', 0.6393), ('Car', 0.159), ('Girl', 0.6135)])

Вы также можете комбинировать приведенные выше примеры только для использования списков, которые упорядочены :

mylist = [0.2577, 0.2311, 0.6393, 0.159, 0.6135]

items = ['Bag', 'Door', 'Duck', 'Car', 'Girl']

d = dict(zip(items, mylist))

print(d)
# {'Bag': 0.2577, 'Door': 0.2311, 'Duck': 0.6393, 'Car': 0.159, 'Girl': 0.6135}

и является наиболее простым решением вашей проблемы, поскольку он создает словарь напрямую.

0 голосов
/ 31 декабря 2018

Это, вероятно, должно работать:

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