Python の変数のスコープに関する非常に基本的な概念が欠けているに違いありませんが、何が原因かわかりませんでした。
関数のスコープ外で宣言された変数にアクセスしたい簡単なスクリプトを書いています。
counter = 0
def howManyTimesAmICalled():
counter += 1
print(counter)
howManyTimesAmICalled()
意外なことに、実行すると次のようになります。
UnboundLocalError: local variable 'counter' referenced before assignment
最初の行にグローバル宣言を追加する
global counter
def howManyTimesAmICalled():
counter += 1
print(counter)
howManyTimesAmICalled()
エラーメッセージを変更しませんでした。
私は何を間違っていますか?それを行う正しい方法は何ですか?
ありがとう!