これに類似した質問がありましたが、この特定の質問は扱われていませんでした。Python構文警告グローバル変数割り当ての場合
global EXAMPLE_GLOBAL
EXAMPLE_GLOBAL = True
def Setup():
if EXAMPLE_GLOBAL:
try:
#Doing some file io here
except:
global EXAMPLE_GLOBAL
EXAMPLE_GLOBAL = False
このコードを実行している(正確には、これは単に基本的なロジックにこのコードストリップダウンされるわけではありません。)私が手:
SyntaxWarning:名「EXAMPLE_GLOBAL」が前のグローバル宣言に使用されている グローバルEXAMPLE_GLOBAL
グローバル変数の値を変更するには、最初に新しいスコープに移動したときにグローバル変数を参照していると指定する必要がありました。グローバルに変更するには2番目のグローバルEXAMPLE_GLOBALが必要ですか、同じ識別子を十分に使用していますか?
最初の行に 'グローバルEXAMPLE_GLOBAL'を置きます –
'EXAMPLE_GLOBAL'の使用法の中には、関数内の' global'宣言の前にあるものがあることを警告しています。 'global EXAMPLE_GLOBAL'があなたの関数の先頭にあったならば、あなたのコードはより明確になります。 – khelwood