Menü
Avatar von wlorenz65
  • wlorenz65

mehr als 1000 Beiträge seit 18.07.2001

Re: Self.Python self.ist self.toll!

Auf reddit habe ich heute früh ein Codeschnipsel gesehen, das löst das mit einer lokalen Referenz. Also in etwa so:

self.var1 = ... self.var2 = ... self.model = m = ... m.fn1(...) m.fn2(...) m.fn3(...) m.fn4(...)

Das hilft ein bisschen. So wie in C++ ist mir das aber lieber, vielleicht noch mit unterschiedlichen Farben in der IDE um Fehler zu vermeiden. Die Begründung ist ja, dass es in Python keine Typen gibt, so dass man das self braucht, um den Scope zu unterscheiden. Bei global geht das aber. Da sind Lesezugriffe automatisch global, und nur wenn man schreiben will, braucht man das global Schlüsselwort. Bei einer wirklich eleganten Sprache könnte man einfach ein class vor ein prozedurales Programm schreiben, und der Compiler würde das schlucken und man könnte mehrere Instanzen davon anlegen.

Bewerten
- +
Anzeige