Можно создать дубликат:
Instance variables vs. class variables in PythonPython ... Статические переменные?
В чем разница между этими двумя ситуациями, и как это лечится с в Python?
Ех1
class MyClass:
anArray = {}
Ex2
class MyClass:
__init__(self):
self.anArray = {}
Похоже, что и в первом примере массив обрабатывается как статической переменной. Как Python относится к этому и в чем причина этого?
Это не «статическая переменная», но она является членом * конкретного объекта *, который имеет «стабильное имя». Какой объект может быть? ;-) (Помните, что классы не являются «просто определениями» в Python.) –
Они называются переменными класса. http://stackoverflow.com/questions/2714573/instance-variables-vs-class-variables-in-python или http://stackoverflow.com/questions/68645/static-class-variables-in-python – birryree