Je sais que "affectation de variable" en python est en fait une liaison/re-bindign d'un nom (la variable) à un objet. Cela soulève la question suivante: est-il possible d'avoir une affectation correcte en python, par exemple rendre un objet égal à un autre objet?Affectation en python
Je suppose qu'il n'y a pas besoin de cela en python:
objets Inmutable ne peuvent pas être « attribués à », car ils ne peuvent pas être modifiés
objets mutables pourraient être affectés à, car ils peuvent changer, et cela pourrait être utile, car vous voudrez peut-être manipuler une copie du dictionnaire séparément de celle d'origine. Cependant, dans ces cas, la philosophie de python est d'offrir une méthode de clonage sur l'objet mutable, de sorte que vous pouvez lier une copie plutôt que l'original.
Je suppose que la réponse est qu'il n'y a pas d'affectation en python, la meilleure façon de mimer ce serait la liaison à un objet cloné
Je voulais simplement partager la question au cas où je suis manque quelque chose d'important ici
Merci
EDIT:
deux Lie Ryan et Sven M répond arnach sont bonnes, je suppose que la réponse globale est un mélange des deux:
Pour les types définis par l'utilisateur, utilisez l'idiome:
a. dict = dict (b. dict)
(Je suppose que cela a des problèmes aussi bien si la classe attribuée a redéfini les méthodes d'accès aux attributs, mais laisse pas difficile :))
Pour mutable Encastrements (listes et dicts) utilisent les méthodes de clonage/copie qu'ils fournissent (par exemple des tranches, mise à jour)
enfin inmutable Encastrements ne peuvent pas être modifiés ne peuvent donc être affectés
Je vais choisir Li Ryan parce que c'est un idiome élégant auquel je n'avais pas pensé.
Merci!
Demandez-vous une copie en profondeur? Est-ce ce que vous voulez dire par "se lier à un objet cloné"? –