Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 检查变量在一段时间内的变化程度_Python_Python 3.x - Fatal编程技术网

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

因此,我对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_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。一次按下鼠标,一次再次松开鼠标。