Используйте ключ хранения переменной из dict1 в качестве нового ключа для dict2 - PullRequest
0 голосов
/ 30 мая 2019

Я хочу получить ключи и их значения из словаря, соответствующего условиям, а затем сохранить их в другом словаре. До сих пор я думал:

dict = {'a': 1, 'b': 2}
new_dict = {}
for x in dict:
    new_dict.update(x=dict[x])
print (dict)
print (new_dict)

Здесь x хранит ключ 'a' со значением 1, но когда я обновляю new_dict, он хранит x: 2, то есть во время первого цикла он создает новый ключ x и повторно инициализирует ключ во время второго цикла. Это означает, что Python интерпретирует x как литерал.

Есть ли в любом случае new_dict магазин 'a': 1 и 'b': 2?

1 Ответ

0 голосов
/ 30 мая 2019

Это сработало для меня:

$ python
Python 3.7.2 (default, Dec 27 2018, 07:35:06) 
>>> d1 = {'a':1,'b':2}
>>> d2 = {}
>>> for k,v in d1.items():
...     if True:
...             d2[k] = v
... 
>>> d2
{'a': 1, 'b': 2}

Вы бы просто заменили if True на ваше состояние.

См. Здесь дополнительную информацию о циклическом перемещении словарей: https://docs.python.org/3/tutorial/datastructures.html#looping-techniques

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