这个未解决的参考意味着什么?

时间:2015-07-06 19:49:10

标签: python increment

我试图通过增加python中的变量来计算鼠标点击次数。

from tkinter import *
import serial, time
root = Tk()

ser = serial.Serial()
ser.baudrate=9600
ser.port=0

x = 0
def leftClix(event):
    print("Left")
    if x == 3:
        exit(0)
    else:
        x=x+1
def rightClix(event):
    print("Right")

def middleClix(event):
    print("Middle")

frame = Frame(root, width=300, height=250)
frame.bind("<Button-1>", leftClix)
frame.bind("<Button-2>", middleClix)
frame.bind("<Button-3>", rightClix)
frame.pack()

root.mainloop()

在PyCharm中,&#34; x&#34;在x + 1中用下划线加下划线:未解析的引用:

当我点击鼠标左键时,我得到&#34; UnboundLocalError:局部变量&#39; x&#39;在分配之前引用&#34;

这是什么意思?我之前分配过......所以我不明白。我尝试将x设为全局,但这并没有帮助。有人可以解释我在这里做错了什么吗?

1 个答案:

答案 0 :(得分:2)

正如@khelwood所说,将x标记为全球这样:

def leftClix(event):
  global x
  ...
  x = x + 1

这会显示在Python Programming FAQ