Использовать ключ для хранения переменных из dict1 в качестве нового ключа для dict2

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

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?

это дубликат. Я хочу скопировать, например, только a над. Я надеюсь выполнить итерацию dict, и ключи, соответствующие условию, затем будут сохранены в new_dict.

PhantomQuest 30.05.2019 01:00

Для начала, весь смысл update заключается в том, чтобы делать: new_dict.update(old_dict). Чтобы назначить один предмет, используйте new_dict[some_key] = some_value, если вы В самом деле должны использовать update (вы этого не делаете), то вы можете сделать перегруженный new_dict.update({some_key:some_value}) или даже более перегруженный new_dict.update([(some_key, some_value)])

juanpa.arrivillaga 30.05.2019 01:00
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
2
31
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

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

$ 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

Работает как шарм!

PhantomQuest 30.05.2019 01:03

Другие вопросы по теме