2017-05-24 8 views
-2

変数は既に使用されていますが、明らかに定義されていません。コードはhereNameError:name 'questionTextOne'が定義されていません

私は変数をグローバルとして宣言しようとしました。あなたはunpackOneでグローバルとしてquestionTextOneを宣言した

Exception in Tkinter callback 
Traceback (most recent call last): 
    File "C:\Users\matth\AppData\Local\Programs\Python\Python35-32\lib\tkinter\__init__.py", line 1550, in __call__ 
    return self.func(*args) 
    File "C:\Users\matth\OneDrive\Documents\Assesment.py", line 145, in incorrect 
    unpackOne() 
    File "C:\Users\matth\OneDrive\Documents\Assesment.py", line 173, in unpackOne 
    questionTextOne.pack_forget() 
NameError: name 'questionTextOne' is not defined 
+1

外部スコープ内に 'questionTextOne'オブジェクトがありません –

+2

また、[mcve](https://stackoverflow.com/help/mcve)を提供してください。プロジェクトコードの一部ではありません –

+0

外部のコードにリンクしないでくださいサイト。 –

答えて

1

が、アイデアがない、他のスコープ株式:

フル・エラー。 unpackOnequestionTextOneの既存の値を使用しようとすると、1つもありません。同じ変数名を使用するプログラム内の唯一の他の場所はask(38行目参照)ですが、askはそれを別の変数として保持します。

残りのプログラムと共有したい場合は、askに教えてください。グローバル変数は、一般的に悪い考えであることをラインで

global questionTextOne 

注意を挿入します。通常、必要に応じてルーチンからルーチンにオブジェクトを渡す必要があります。

関連する問題