Python 检查变量在一段时间内的变化程度
因此,我对python相当陌生,我正在尝试构建一个“类似股市”的游戏 如果每次点击次数增加,价格就会上升,反之亦然 我现在面临的第一个挑战是存储我点击的次数 到目前为止,我的代码如下所示:Python 检查变量在一段时间内的变化程度,python,python-3.x,Python,Python 3.x,因此,我对python相当陌生,我正在尝试构建一个“类似股市”的游戏 如果每次点击次数增加,价格就会上升,反之亦然 我现在面临的第一个挑战是存储我点击的次数 到目前为止,我的代码如下所示: from pynput.mouse import Listener count = 0 def on_click(x, y, button, pressed): print("check") count += 1 print(count) with Listener(on_click=on_cl
from pynput.mouse import Listener
count = 0
def on_click(x, y, button, pressed):
print("check")
count += 1
print(count)
with Listener(on_click=on_click) as listener:
listener.join()
现在,当我点击它时,它会打印出“check”,也会打印出“0”,因为我以前是这样定义的。但如果我再次点击,它就不算了。对不起,我最近才开始编程
稍后,我想知道每个时间跨度我点击了多少次。但还有很长的路要走
感谢您的帮助尝试使用全局变量
from pynput.mouse import Listener
count = 0
def on_click(x, y, button, pressed):
print("check")
global count
count += 1
print(count)
with Listener(on_click=on_click) as listener:
listener.join()
除了我的使用说明之外,根据您的使用情况,您也可以考虑使用OOP方法:
class Mouse:
def __init__(self):
self.count = 0
def on_click(self, x, y, button, pressed):
print('check')
self.count += 1
print(self.count)
m = Mouse()
with Listener(on_click=m.on_click) as listener:
listener.join()
这样,如果要跟踪不同的鼠标事件,可以创建
mouse()的单独实例
因此,与使用一个全局变量相比,将计数分开要容易得多。使用导入日期时间和time=datetime.datetime.utcnow
尝试在单击时保存到数据库/文件。具体来说,您遇到的问题是局部变量与全局变量。您的第一个count=0
是一个全局范围变量,但当您尝试在函数中重新分配它时,它引用的是函数中的局部变量。因此,每次执行函数时,局部变量count
都是空的。将全局计数
放入您的点击功能中感谢您对我的帮助。现在它起作用了。现在它实际上是2。一次按下鼠标,一次再次松开鼠标。