使用Pyinstaller创建的.exe文件出现错误:input()丢失sys.stdin。

4

我正在使用 pyinstaller 将一个 .py 文件转换为 .exe 文件。

我的 terminal2.py 文件如下:

import sys

if __name__ == "__main__":
    arg = sys.argv
    name = input("Enter your name..")
    print(f"hello, {name}")

然后在终端中,进入文件目录并运行以下命令:pyinstaller --onefile -w terminal2.py

上述命令后目录中的更改

在dist目录中运行.exe文件时出现的错误

我已经在Google上寻求帮助,但徒劳无功。

我想实现什么?

最低期望:当我双击terminal2.exe文件时,CLI将打开,我将能够执行通常的输入和输出操作,根据我的Python代码。
更高期望:我可以创建像pip这样的命令,可以在任何cmd/terminal中全局运行。


“-w”是什么意思? - abdou_dev
2个回答

5

试一下这个:

pyinstaller --onefile terminal2.py

更多细节:

https://datatofish.com/executable-pyinstaller/


(本文介绍了如何使用PyInstaller将Python代码打包成可执行文件的详细步骤,欢迎点击链接查看。)

它对我有用,谢谢 :) - Ali Najafi
@abdou_dev 每次我创建.exe文件时,Windows Defender都会将其删除,你能帮我解决这个问题吗? - Curious Learner
你可能需要为这个文件创建一个排除项,请参考此链接 https://jackboxgames.happyfox.com/kb/article/28-how-to-whitelist-and-resolve-issues-in-antivirus-software-and-firewalls/ 以获取更多详细信息,如果你发现我的解决方案有效,请接受我的答案。 - abdou_dev
@abdou_dev 问题 --你能帮我解决这个问题吗? - Curious Learner
@abdou_dev 请看看这篇帖子,如果你能帮助我?帖子链接 - Curious Learner
它也适用于我。 - Saeid Vaygani

0

运行时错误:input():丢失sys.stdin

我在使用--noconsole参数时:

pyinstaller --onefile --noconsole ScrCpy_GUI.py

由于没有控制台,这无法从用户那里获取input()

请尝试以下方法(根据您的情况):

pyinstaller --onefile terminal2.py

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接