Я знаю, что «присваивание переменной» в python на самом деле является связующим/повторным связыванием имени (переменной) с объектом.Назначение в python
Возникает вопрос: возможно ли иметь правильное назначение в python, например, сделать объект равным другому объекту?
Я предполагаю, что нет никакой необходимости в том, что в Python:
Inmutable объекты не могут быть «назначены», поскольку они не могут быть изменены
изменяемые объекты потенциально могут быть назначены, поскольку они могут измениться, и это может быть полезно, так как вы можете манипулировать копией словаря отдельно от оригинала. Однако в этих случаях философия python предлагает метод клонирования на изменяемом объекте, поэтому вы можете привязать копию, а не оригинал.
Так что я думаю, ответ в том, что нет никакого присваивания в питоне, лучший способ имитировать это будет обязательным для клонированного объекта
Я просто хотел поделиться вопросом в случае, если я не хватает что-то важное здесь
Благодаря
EDIT:
и Ли Райан и Свен M arnach ответы хороши, я предполагаю, что общий ответ является сочетание обоих:
Для определенных пользователем типов, используйте идиома:
а. ДИКТ = ДИКТ (б. ДИКТ)
(я предполагаю, что это имеет проблемы, а если назначенный класс переопределяет методы доступа к атрибутам, но позволяет не быть суетливым :))
Для изменяемые встроенные модули (списки и dicts) используют для клонирования/копирования методов, которые они предоставляют (например, ломтики, обновлять)
наконец inmutable встроенные модули не могут быть изменены таким образом, не может быть назначен
Я выберу Li Райан, потому что это изящная идиома, о которой я не думал.
Спасибо!
Вы спрашиваете о глубокой копии? Это то, что вы подразумеваете под «привязкой к клонированному объекту»? –