Используйте subprocess.run с проверкой = True, где ожидается, что команда вернет ненулевой код выходаPython

Программы на Python
Anonymous
Используйте subprocess.run с проверкой = True, где ожидается, что команда вернет ненулевой код выхода

Сообщение Anonymous »

При использовании subprocess.run рекомендуется использовать check = True (источник). Однако может существовать подпроцесс, который я хочу запустить, и в котором ожидается ненулевой код завершения, и мне интересно, существует ли подход, который удовлетворит как pylint, так и мой код.
Например:

Код: Выделить всё

subprocess.run('ls | grep sdfjosidjf', shell = True, check = True)
Повысит (скорее всего):

Код: Выделить всё

CalledProcessError: Command 'ls | grep sdfjosidjf' returned non-zero exit status 1.
А что, если это именно то, чего я ожидаю или даже хочу?
Я мог бы удалить check = True и просто отключить pylint для этой строки. Мне интересно, есть ли более общий подход, чем check = True, хотя, возможно, я ожидаю либо 0, либо 1 в качестве кодов выхода.

Подробнее здесь: https://stackoverflow.com/questions/683 ... return-a-n

Вернуться в «Python»