我想让我的程序可执行。 我使用 TkInter 编写 GUI,并且我在某处读到,必须将文件另存为 .pyw 才能在执行程序时隐藏控制台。 问题是,使用 PyInstaller 将其设为可执行文件后,控制台再次显示,即使转换的文件是 .pyw。 如何在 .exe 文件中也隐藏控制台?
您尝试过
--windowed
命令行标志吗?
你用什么来制作可执行文件?
如果您使用 py2exe 并且使用:
setup(windows=[pythonscriptnamehere])
在设置脚本中而不是:
setup(console=[pythonscriptnamehere])
它将运行可执行文件,而无需在后台启动终端。
来自 PyInstaller 文档:
使用控制台窗口
默认情况下,引导加载程序会创建一个命令行控制台(终端 GNU/Linux 和 Mac OS 中的窗口,Windows 中的命令窗口)。它给出了 Python 解释器的标准输入窗口 输出。您的脚本对 print 和 input() 的使用将在此处进行指导。 来自 Python 的错误消息和默认日志输出也出现在 控制台窗口。
Windows 和 Mac OS 的一个选项是告诉 PyInstaller 不要提供 控制台窗口。引导加载程序启动 Python,但没有目标 标准输出或输入。当您的脚本有图形时执行此操作 用于用户输入的界面,并且可以正确报告自己的诊断。
如 CPython 教程附录中所述,对于 Windows 来说,文件 .pyw 的扩展名会抑制通常出现的控制台窗口。 同样,使用时不会提供控制台窗口 使用 PyInstaller 的 myscript.pyw 脚本。