【问题标题】:How to catch this error message in Python "is not recognized as an internal command"?如何在 Python 中捕获此错误消息“不被识别为内部命令”?
【发布时间】:2020-04-29 11:40:47
【问题描述】:

我正在使用带有 Windows 10 64 位的 Python 3.7。 我的 python 脚本需要通过“cmd”运行一些 Windows 程序。 我的 python 脚本之前安装了这些“Windows 程序”并将它们的路径添加到环境变量“Path”中。 但是当 Windows 命令无法识别程序时,我仍然收到此错误消息:

'myWindowsprogram' is not recognized as an internal command

我们如何在 Python 中捕获此错误消息,以便执行一些其他代码并解决我的代码问题?

【问题讨论】:

    标签: python python-3.x exception


    【解决方案1】:

    我假设你正在使用

    os.system
    

    在这种情况下,可能无法捕获输出。

    来自https://janakiev.com/blog/python-shell-commands/,尝试类似,

    import subprocess
    p = subprocess.Popen(['abc'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
    

    这将给出 FileNotFoundError,因此您可以尝试像这样捕获它

    try:
        p = subprocess.Popen(['abc'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
    except FileNotFounError:
        # do something else
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-01
      • 1970-01-01
      • 2017-07-19
      • 2020-01-13
      • 1970-01-01
      • 2017-09-04
      • 2015-01-30
      • 1970-01-01
      相关资源
      最近更新 更多