Как отловить это сообщение об ошибке в Python "не распознана как внутренняя команда"? - PullRequest
0 голосов
/ 29 апреля 2020

Я использую Python 3,7 с Windows 10 64 бит. Мой python скрипт должен запускать какую-то Windows программу через 'cmd'. Мой скрипт python ранее установил эти 'Windows программы' и добавил их пути в переменную окружения "Path". Но я все еще получаю это сообщение об ошибке, когда программа не распознается командой Windows:

'myWindowsprogram' is not recognized as an internal command

Как мы можем перехватить это сообщение об ошибке в Python, чтобы выполнить какой-то другой код и устранить проблему с моим кодом?

1 Ответ

0 голосов
/ 29 апреля 2020

Я предполагаю, что вы используете

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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...