Vorrei sapere se esiste un modo per "collegare" due attributi di una classe o per assegnare 2 nomi a uno stesso attributo?2 nomi per lo stesso attributo
Ad esempio, attualmente sto lavorando a uno script che crea un triangolo dai dati forniti dagli utenti. Il mio triangolo è ABC. I lati di questo triangolo sono AB, BC e CA. Quindi il triangolo ha questi 3 attributi (self.AB, self.BC, self.CA). Ma AB = BA, quindi vorrei consentire agli utenti di fare print myInstance.BA
anziché print myInstance.AB
.
Quindi ho pensato di creare l'attributo self.AB e la proprietà BA (che restituisce self.AB). Quel lavoro bene quando cerco di fare print myInstance.BA
invece di print myInstance.AB
ma io sono avido ...
Vorrei anche per consentire agli utenti di fare myInstance.BA = 5
invece di myInstance.AB = 5
e durante questa operazione anche modificare l'attributo AB.
C'è un modo per farlo?
Bug: Aggiungere la seguente riga dopo l'ultima riga per vedere l'errore: 'f.ab stampa, f.ba' –
@HaiVu Questo è perché ci era un errore di battitura nell'esempio. '__setattr__' è stato digitato in modo errato. – amccormack