Ho programmato in diversi linguaggi come Java, Ruby, Haskell e Python. Devo passare da una lingua all'altra a causa di diversi progetti su cui lavoro. Ora, il problema è che spesso dimentico di scrivere self
come il primo parametro nelle definizioni delle funzioni in Python stesso è con i metodi di chiamata sullo stesso oggetto.
Detto questo, sono abbastanza sorpreso da questo approccio di Python. Fondamentalmente dobbiamo scrivere di più per fare le cose, in linguaggi come Java e Ruby le cose sono rese semplici facendo riferimento automaticamente alle variabili nell'oggetto corrente.
La mia domanda è: perché è self
necessario? È semplicemente una scelta di stile o c'è un motivo per cui Python non può lasciarti omettere self
dal modo in cui Java e C ++ ti fanno omettere this
?
@staticmethod
prima della dichiarazione del metodo, elimina l'errore (solo per informazioni e anche non consigliato)