Python 键盘侦听器



我使用了这段代码,它运行良好。但是,它有一些奇怪的东西,就像它不是Python一样!

print_event 中的 e 变量以我以前从未见过的方式使用。它是一个常规函数,可以打印传递给它的任何内容,但问题是它的使用方式,甚至是应该作为参数传递给参数 e 的事件变量

如果你不注意,似乎 append 函数将添加的值返回给print_event,而不是像 Python 中的 append 那样附加它们.整个函数被附加到处理程序列表中一次,然后它继续运行,直到程序终止,就像它是一段时间 True 循环一样。

该代码基本上启动键盘侦听器并不断记录按键,但按键会发生什么是问题。低级侦听器中的 for 循环没有意义,如果它应该记录键而不是读取它们,为什么要遍历处理程序。再说了,为什么要通过活动?处理程序是一个列表,而不是一个函数,我只知道用于初始化变量的赋值运算符

此外,如果处理程序初始化为空,如果它们的内存空间未分配且不存在,它如何为项目分配值并通过它们?

我没有看到任何缓冲函数被调用,那么它是如何工作的?Python不应该看起来像那样

我正在尝试做的是实时访问处理程序列表并处理事件

如能作出解释,将不胜感激。提前致谢

你问的是函数变量吗?

如果是,则可以像传递任何其他变量一样传递函数,并在以后使用其他名称调用它们。

例如:

def hi(string):
print(string)
fns = [hi, hi]
for fn in fns:
fn('hello')

如果这仍然令人费解,也许您可以使用调试器逐步完成它,以使这个想法看起来更具体。

最新更新