こんにちは私は、Cmdモジュールを使ってPythonでネストされたインタプリタを作成したいと考えています。PythonでネストされたCmdインタプリタをインスタンス化する
プロジェクトを簡単に拡張できるようにする(つまり、新しいPythonファイルをフォルダに追加し、メインコードをロードできないようにする)ために動的モジュールの読み込みを設定します。
私の入れ子になったインタプリタは、現在、このような設定である:ネストされたインタプリタを作成するために、私はSubConsoleクラスに2番目の変数としてメインコンソールを渡す必要があるため
def instantiateConsole(base):
class SubConsole(cmd.Cmd, base):
def __init__(self):
cmd.Cmd.__init__(self)
def do_action(self,args):
print "Action"
return SubConsole
、これが必要です。この問題は、この方法でクラスを作成することができ、このメソッド内で定義を持たずに動的にロードできる新しいコンソールモジュールファイルを追加できなくなることです。
この問題を回避する方法はありますか?
あなたは 'MainConsole'を渡す例を挙げることができますか? –