保持cmd.exe打开

时间:2012-07-24 09:23:56

标签: python registry cmd

我有一个python脚本,我使用注册表项使其可删除,但它似乎不起作用。 cmd.exe窗口只是闪烁,我可以以某种方式使窗口保持不动,或保存输出?

编辑:问题在于它不仅给出了文件名的整个路径。

5 个答案:

答案 0 :(得分:6)

如果你想要一个纯Python解决方案,你必须用try / except子句包装你的脚本:

import traceback
try:
    ... your script ...
except:
    traceback.print_exc()

raw_input("Press Enter to close") # Python 2
input("Press Enter to close") # Python 3

这样,即使代码抛出异常,窗口也会保持打开状态。当Python无法解析脚本时,即当您遇到语法错误时,它仍将关闭。如果您也想解决这个问题,我建议使用一个好的IDE,让您以更愉快的方式开发(PyCharmPyDev)。

答案 1 :(得分:2)

在脚本末尾插入一行:

raw_input("Press Enter to close") # Python 2

input("Press Enter to close") # Python 3

答案 2 :(得分:1)

当您的脚本完成执行后,窗口将关闭。

保持开放的一个技巧是让它向用户询问某种输入,例如:通过raw_input


所以你可以添加

raw_input()

到脚本的末尾,等待用户按 Enter

答案 3 :(得分:1)

另一种可能的选择是使用textarea和关闭按钮创建基本的TKinter GUI。然后使用subprocess或equiv运行它。并使用pythonw.exe执行python脚本中的stdout,以便不会出现CMD提示符。

这使它纯粹使用Python stdlib,也意味着您可以使用GUI来设置选项或输入参数......

只是一个想法。

答案 4 :(得分:1)

右键单击您的脚本并删除其属性中的程序 - >关闭退出复选框,或使用cmd /k作为其主叫行的一部分。

在引入人为延迟或需要按键之前请三思而后行 - 这将使您的脚本在任何无人值守/管道调用中几乎无法使用。