別のファイルでインスタンス化された親クラスからサブクラス変数にアクセスする方法を探しています。例えば
ベースファイル.py:
class A(object): #gets subclassed
var = 0 #place holder
def printTheVar(self):
print self.var
class B(object):
def buildAndCallA(self):
a = A()
a.printTheVar()
実装ファイル.py:
from basefile import *
class A(A):
var = 10
if __name__ == '__main__':
b = B()
b.buildAndCallA()
私が実行すると:
$ python implementationfile.py
私は 0 を取得します。私は 10 を取得したいです。
親クラスと実装クラスの両方が同じファイルにある場合、これは明らかに問題ではありませんが、それらが必要ないプロジェクト構造があります。
somedir/
| basefile.py
| implementations/
| -- implementationA.py
| -- implementationB.py
| -- implementationC.py
モジュールが役立つかもしれないと思いますabc
が、それを使った私の実験はこれまでのところ無益であることが証明されています.