Windows平台Python实现程序自动重启且不新开窗口的方案咨询
Windows 10 下Python程序无新窗口自动重启解决方案
可直接运行的修正代码
import os import sys x = int(input("x = ")) if x == 0: # 适配Windows平台同窗口重启逻辑 os.execv(sys.executable, [sys.executable] + sys.argv) else: print("fin")
原代码问题说明
- 原代码中
os.execl调用时给sys.executable额外包裹了双引号,Windows系统下路径解析不需要手动加引号,会导致路径识别异常,触发附带shell启动的问题。 - 注释掉的bash调用逻辑仅适用于Linux/macOS环境,Windows环境下无作用直接删除即可。
效果验证
- 重启时不会弹出新的控制台窗口,所有逻辑都在原窗口执行
- 重启后会重新运行整段代码,自动触发
input要求输入x的取值,等效于手动按下F5重新运行程序的效果。
内容的提问来源于stack exchange,提问作者user13044576
相关产品推荐
相关产品推荐

