pyinstaller无法执行脚本,这是一个使用idle的简单脚本



我制作了一个小工具,将ctrl+win+右箭头绑定到这段代码中的一个键,它的F2。问题是,当我试图使用pyinstaller使它成为我想要这个工具的朋友的可执行文件时,当我试着打开它说无法执行脚本的exe时。但它在python空闲时可以正常工作代码是:

from pynput.keyboard import Key , Controller
keyboard = Controller()
i=2
import keyboard
import time
def waitUntil(): #defines function
wU = True
while wU == True:
if not keyboard.is_pressed("F2"): #checks the condition
wU = False
else:
wU = True
while i == 2 :
if keyboard.is_pressed("F2") :
waitUntil()
keyboard.press("Ctrl+cmd+Right")
keyboard.release("Ctrl+cmd+Right")```

这里很难提供帮助,因为Controller最终没有一个名为"is_pressed(("。

这样清理你的代码:

from pynput.keyboard import Controller
keyboard = Controller()
def waitUntil(): #defines function
wU = True
while wU == True:
if not keyboard.is_pressed("F2"): #checks the condition
wU = False
else:
wU = True
while True :
if keyboard.is_pressed("F2") :
waitUntil()
keyboard.press("Ctrl+cmd+Right")
keyboard.release("Ctrl+cmd+Right")

运行时应该会出现以下错误:

Traceback (most recent call last):
File "/home/oubnouquestion.py", line 14, in <module>
if keyboard.is_pressed("F2") :
AttributeError: 'Controller' object has no attribute 'is_pressed'

至少这是我在最新版本的pynput的Linux上得到的。因此,在我使用Pyinstaller之前,它就已经崩溃了。你确定这在Idle中有效吗?

最新更新