История изменений
Исправление tailgunner, (текущая версия) :
class Foo(object):
f1 = {"att1": "bzz"}
def __init__(self, a):
self.f1 = a
>>> o = Foo(100)
>>> o.f1
100
>>> Foo.f1
{'att1': 'bzz'}
Правда, следить за согласованностью имен полей класса Foo и полей объекта класса Foo придется самому. Хотя, наверное, можно навесить декоратор на класс, а в нем проставить __slots__... но для однофайловой программы это оверкилл.
Исправление tailgunner, :
class Foo(object):
f1 = {"att1": "bzz"}
def __init__(self, a):
self.f1 = a
>>> o = Foo(100)
>>> o.f1
100
>>> Foo.f1
{'att1': 'bzz'}
Правда, следить за согласованностью имен полей класса Foo и полей объекта класса Foo придется самому.
Исходная версия tailgunner, :
class Foo(object):
f1 = {"att1": "bzz"}
def __init__(self, a):
self.f1 = a
Правда, следить за согласованностью имен полей класса Foo и полей объекта класса Foo придется самому.