Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/330.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 Py-to-exe pyinstaller导入错误_Python_Pyinstaller_Python Module - Fatal编程技术网

Python Py-to-exe pyinstaller导入错误

Python Py-to-exe pyinstaller导入错误,python,pyinstaller,python-module,Python,Pyinstaller,Python Module,我正在尝试使用pyinstaller将单个文件python脚本/项目转换为exe 即使pyinstaller转换了.exe将运行的脚本并抛出 Traceback (most recent call last): File "main.py", line 4, in <module> File "PyInstaller\loader\pyimod03_importers.py", line 540, in exec_module File &qu

我正在尝试使用pyinstaller将单个文件python脚本/项目转换为exe

即使pyinstaller转换了.exe将运行的脚本并抛出

Traceback (most recent call last):
File "main.py", line 4, in <module>
File "PyInstaller\loader\pyimod03_importers.py", line 540, in exec_module
File "pynput\__init__.py", line 40, in <module>
File "PyInstaller\loader\pyimod03_importers.py", line 540, in exec_module
File "pynput\keyboard\__init__.py", line 31, in <module>
File "pynput\_util\__init__.py", line 76, in backend
ImportError
[16676] Failed to execute script main
回溯(最近一次呼叫最后一次):
文件“main.py”,第4行,在
exec_模块中第540行的文件“PyInstaller\loader\pyimod03_importers.py”
文件“pynput\\uuuu init\uuuuu.py”,第40行,在
exec_模块中第540行的文件“PyInstaller\loader\pyimod03_importers.py”
文件“pynput\keyboard\\uuuuu init\uuuuuuu.py”,第31行,在
文件“pynput\\u util\\uuuu init\uuuuuu.py”,第76行,在后端
强求恐怖
[16676]无法执行主脚本
我被难住了,通过我的反复试验,我发现当我用一个像random这样的模块替换pynput时,转换工作得很好,但我需要它与pynput一起工作

请帮忙,提前谢谢

作者做了一些改动,我觉得这些改动打破了参考。
所以,它不是包,而是引用文件

- backend = backend(__package__)
+ backend = backend(__name__)
请尝试降级您的软件包,并检查您的应用程序是否仍然有效

pip install pynput==1.6.8
然后,您的命令(如下面所示)将起作用

pyinstaller --onefile   build_pkg_for.py

请将您使用的完整命令与参数放在一起。例如,
pyinstaller--onefile--windowed my_app.py
似乎没有导入所有模块。
pyinstaller my_app.py-F
我也尝试过这样做
pyinstaller my_app.py-F--hiddenimport=pynput
。顺便说一句,如果有帮助的话,这个
pyinstaller my_app.py-F-p-C:\pathToVenv\Lib\site-packages
这是一个pycharm项目哇,实际上解决了这个问题,非常感谢!!因此,为了理解这个问题,是pyinstaller问题还是PyInput问题,如果它在不同的模块中再次发生,我可以做同样的事情:)这取决于谁的用户群很大:)现在我想说PyInput和pyinstaller的最新版本是不兼容的。