Я просто пытаюсь изменить значение из вложенного словаря.
Первый словарь пуст, а второй заполнен. Когда я пытаюсь изменить значение одного из элементов вложенного словаря, также было изменено значение с тем же ключом других элементов.
name = dict()
work = {"hour" : 4, "age":21}
name['bob'] = work
name['harry'] = work
name['bob']['hour'] = 7
Теперь я получаю это, если печатаю новый словарь name:
{'bob': {'hour': 7, 'age': 21}, 'harry': {'hour': 7, 'age': 21}}
Я хотел бы иметь такую ситуацию:
{'bob': {'hour': 7, 'age': 21}, 'harry': {'hour': 4, 'age': 21}}
Почему он меняет час из словаря harry?
name['bob'] = work.copy()
иname['harry'] = work.copy()
. Будет передана ссылка, а не значение. - person jizhihaoSAMA   schedule 05.05.2020