は、だから私は方法(パイソン)
def populateGlobalList(thefile):
#do the stuff
含む
のmymoduleのコードで...ように、この
import mymodule
sum_global= mymodule.populateGlobalList("bigdict.txt")
と同じようになり、いくつかのPythonコードを持っています
これまでのところ大丈夫です。
しかし、他の場所でのmymoduleで私は理にかなって未定義sum_global、上
def usefulFunction(arg1, arg2):
#lotsofstuff
if arg1 not in sum_global:
#add to list
ので、通訳の旅行を言う方法があります。今、usefulFunctionは、少なくとも理論的には、sum_globalを引数にとります。しかしsum_globalは、遭遇した単語が英語の単語(または少なくともスペルミスが正しい単語)であるかどうかを確認するために広範囲に使用される英和辞書であることを意図しています。これがたくさん起こるので、それは不必要に面倒にローカルにするように感じるでしょう。単にモジュール内のグローバルsum_globalを宣言する一方
は(基本的に通訳をだますために)、この空の容器はのmymoduleをインポートするプログラムに記入されていることを意図して、完全に間違って感じています。
このような状況に適したサウンドデザインとは何ですか?
グローバルはモジュールごとに*されています*。 'sum_global'を' mymodule'に入れるか、関数の引数として渡します。 –
私はそれが正確であるかどうかは分かりませんが、それをクラスにして、 'sum_global'をクラス属性にしてから、' usefulFunction'で 'self.sum_global'を参照するだけです。 – gplayer
これがあなたが探していたものかどうかは不明ですが、関数defの 'kwargs'リストにオブジェクトをデフォルトとして指定すると、そのオブジェクトは一度作成された後、常にデフォルトとして提供されます。 'usefulFunction(arg1、arg2、_cached_list = {})'。 –