ここでは、何が起こっているのかを簡略化したバージョンを示します
x = []
def test():
return x
def init():
x.append('blah')
問題: init() 関数が別のファイルで実行され、グローバル変数 x が正しく更新されます。しかし、test() 関数を実行すると、常に ['blah'] ではなく [] の値が返されます。しかし、ここからが奇妙になります。この関数を実行する場合 (whatever_file.py は、これらの関数が格納されている場所の名前です):
x = []
def test():
from whatever_file import x
return x
def init():
x.append('blah')
これはうまくいきます。['何とか'] が返されます。グローバル x を init および test 関数に入れてみましたが、同様に役に立ちませんでした。何が起こっているのかわかりません
何か助けはありますか?