Наследование и внутренние классы в Python?

В следующем коде класс B унаследовал атрибут yay от класса A , я ожидал этого . Я также ожидал бы, что внутренний класс B.Foo будет вести себя так же, но это не так.

Как заставить B.Foo наследовать alice ] из класса A ? Мне нужно, чтобы внутренний подкласс Foo в B имел атрибуты alice и bob .

Спасибо.

>>> class A:
...     yay = True
...     class Foo:
...             alice = True
...
>>> class B(A):
...     nay = False
...     class Foo:
...             bob = False
>>> B.yay
True
>>> B.Foo.alice
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: class Foo has no attribute 'alice'
18
задан animuson 3 December 2011 в 03:15
поделиться