You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行pyw文件打包的exe程序时如何隐藏弹出的cmd控制台窗口?

隐藏控制台窗口的解决方法

1. 直接运行脚本时隐藏窗口

  • 把你的Python脚本后缀从.py改成.pyw,Windows系统下.pyw格式的脚本会默认用pythonw.exe运行,不会弹出控制台窗口,直接后台执行。
  • 如果你习惯用命令行启动,运行时用pythonw 你的脚本名.pyw替代python 你的脚本名.py即可。

2. 代码层面优化子进程调用

你现有代码最后用os.system("python op1.py")调用子脚本,这个调用本身也会弹出新的控制台窗口,建议替换为subprocess的无窗口调用写法:
把最后一行的os.system("python op1.py")替换为以下代码:

import subprocess
startupinfo = subprocess.STARTUPINFO()
startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
subprocess.Popen(["pythonw", "op1.py"], startupinfo=startupinfo, creationflags=subprocess.CREATE_NO_WINDOW)

这样调用op1.py的时候也不会弹出额外的控制台窗口。

3. 打包成exe可执行文件时隐藏窗口

如果你需要把程序打包成单独的exe文件分发运行,用pyinstaller打包的时候加--windowed或者--noconsole参数即可:
pyinstaller --noconsole --onefile 你的脚本名.pyw
打包出来的exe运行时就不会弹出任何控制台窗口,完全后台运行。

注意事项

  • 如果你代码里有print()输出内容,隐藏控制台之后这些输出就看不到了,调试阶段可以保留控制台,正式运行再隐藏即可。
  • pyttsx3、tkinter这些依赖在无控制台模式下可以正常运行,不需要额外调整。

内容的提问来源于stack exchange,提问作者Tom

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 19:48:03