Wenn ich den folgenden Python-Code habe:
class Foo(object):
bar = 1
def bah(self):
print(bar)
f = Foo()
f.bah()
Es beschwert sich
NameError: global name 'bar' is not defined
Wie kann ich bar
innerhalb der Methode auf Klasse / statische Variable zugreifen bah
?
python
oop
static-variables
Ross Rogers
quelle
quelle
Antworten:
Anstelle von
bar
verwendenself.bar
oderFoo.bar
. Durch Zuweisen zuFoo.bar
wird eine statische Variable erstellt, und durch Zuweisen zuself.bar
wird eine Instanzvariable erstellt.quelle