2011-02-08 10 views
0

ちょっと、私のPythonモジュール(Pythonで書かれています)で、トップレベルのスコープの変数、つまりモジュールを呼び出すファイルにアクセスしたいと考えています。これをどうやってやりますか?おかげさまで Pythonモジュールget top scope変数

答えて

0

一般的に、これを行う方法は、必要な情報への制御されたアクセスを提供するためにプラグイン(たとえば、インポートするモジュール)にAPIを提供することです。

この情報がコンテキストによって異なる場合があり、プラグインの初期化関数に異なる引数を渡すのが適切でない場合は、カバー内のthreading.localを使用する情報APIが価値があります。

1

すべての環境で動作する方法はないため、最上位のPythonコードをどのように実行しているかによって正確な答えが異なる場合があります。もっとも良いことは、変数をオブジェクトに入れ、必要な関数にオブジェクトを渡すことです。

+0

私は基本的に____import____を使って自分のIRCボットのプラグインを動的にインポートしています。問題は、私のユーザーリストなどにアクセスすることが難しくなることです。 – pajm

+1

プラグインAPIの一部を、そのプラグインのコンテキストに渡すための呼び出しにすることはできませんか? –

関連する問題