私が作成したPythonモジュールには、通常の関数定義とクラスが含まれています。何らかの理由でコンストラクターを呼び出して値を渡すと、クラス変数が更新されません。
私のモジュールはVODControl(VODControl.py)と呼ばれています。モジュール内で宣言したクラスはDRMPathと呼ばれます。DRMPathクラスには、ログファイルと結果の2つのインスタンス変数があります。logfileは文字列であり、resultsは辞書です。
私のコンストラクターは次のようになります。
def __init__(self, file):
self.logilfe = file
self.results['GbE1'] = ""
self.results['GbE2'] = ""
self.results['NetCrypt'] = ""
self.results['QAM'] = ""
他のPythonスクリプトからインポートすると、次のようになります。
import VODControl
私が使用する呼び出しは次のとおりです。
d = VODControl.DRMPath('/tmp/adk.log')
ただし、ログファイルインスタンス変数の値を出力すると、コンストラクターに渡した値で更新されません。
print d.logfile
印刷後も空の文字列です。何が得られますか?