我最近为我的祖父使用Python和来自Tkinter的GUI编写了一个相当简单的程序,并且它可以很好地用于他将要使用它的内容。但是,当然还有丑陋的控制台输出窗口。我通过简单地将文件的扩展名从.py更改为.pyw来成功摆脱它。当我使用PyInstaller冻结它时,它再次出现!我有什么方法可以解决这个问题吗?
提前致谢。
答案 0 :(得分:52)
如果要隐藏控制台窗口,here是文档:
这是您使用--noconsole
选项
python pyinstaller.py --noconsole yourscript.py
如果您需要使用pyinstaller帮助到达需要使用--noconsole
选项here的位置,这是一个简单的教程。
答案 1 :(得分:10)
只需添加--noconsole
标记:
$ python pyinstaller.py --noconsole yourprogram.py
您可能也想使用--onefile
,这会创建一个.exe
文件而不是文件夹。
答案 2 :(得分:7)
这是搜索此信息时首先出现的问题之一,因此我想添加我在pyinstaller 3.2版中找到的内容。如果您已经通过运行
打包了脚本pyinstaller --onefile your_script.py
或类似的,您可以编辑your_script.spec文件以摆脱控制台。
exe = EXE(pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
name='main',
debug=False,
strip=False,
upx=True,
console=True )
只需将控制台值更改为False即可。然后运行:
pyinstaller your_script.spec
此外,如果您对代码进行了更改,请运行上面的命令将它们反映在your_script.exe中。我发现这对调试各种其他问题很有用。
答案 3 :(得分:0)
Pyinstaller -F --noconsole yourfilename.pyw
这将创建一个.exe文件
Pyinstaller --noconsole yourfilename.pyw
使用此文件,您将在文件夹中获取.exe文件以及所有.dll和其他必要文件。
答案 4 :(得分:0)
这个命令工作正常
pyinstaller -F -w yourfilename.py
这会隐藏黑色控制台窗口。