私は悪夢を抱いています。私は仮想キューをシミュレートするためにPythonでコードを作成しました。関数内とメインコード内に同じ変数があるのでUnboundLocalErrorを取得しています
コードは単純ですが、私は続けることを繰り返す以外は動作するはずです。
'aList'
は、関数のパラメータとして、またメインコード内の変数とdef
の関数内にあるという問題があると思います。
コードは長すぎず、this linkにあります。
誰か助けてもらえますか?私は'global aList'
を追加しようとしましたが、解決しませんでした。
ありがとうございました。以下のコードの
スナップショット:
def aRemove(aList):
newlist = []
for i in range(1,len(aList)):
newlist.append(aList[i])
aList = newlist
return (aList)
user_request()
aList = ["mark","jon","peter"]
aList = (aRemove(aList))
print(aList)
@ShadowRan ger - ヘルプの編集に感謝します。 – kingpete84
ようこそ。コードブロックに必要なのは余分な4つのスペースインデントだけです。いずれにせよ、あなたが提供したスニペットは、(あなたが定義していない 'user_request()'呼び出しとは別に、書かれているように完璧に動作します。それは誤解を招く( 'aList'に割り当てられても呼び出し側が変更されず、新しい' list'が返され、呼び出し側はそれを修正して再バインドします)、それは正常に動作します。あなたが持っていると言う問題を持っていないか、それを引き起こすコードを提供していないかのどちらかです。エラーからのトレースバックとそのトレースバックに関連付けられたコードを提供します。 – ShadowRanger
@ShadowRanger - メッセージのコードにコードの断片(64行の長さ)を入れます(メッセージに完全なコードへのリンクがあります)。エラーは「行55、user_requestで」 aList =ローカル変数 'aList'が代入の前に参照されています。ローカルではない変数とグローバル変数については読んだことがありますが、問題を把握することができず、時間がなくなってしまいました。 – kingpete84