Сообщить об ошибке.

Объект CompletedProcess модуля subprocess в Python

Код завершения и результат выполнения программы

Синтаксис:

import subprocess

subprocess.CompletedProcess()

# использование
complete = subprocess.run()
complete.args
complete.returncode
...

Параметры:

  • нет.

Возвращаемое значение:

  • значения выполнения программы, запущенной функцией subprocess.run().

Описание:

Объект CompletedProcess() модуля subprocess возвращает значение из subprocess.run(), представляющее завершенный процесс.

Атрибуты объекта subprocess.CompletedProcess.

complete.args:

Атрибут args это аргументы, используемые для запуска процесса. Это может быть список или строка.

complete.returncode:

Атрибут returncode возвращает результат выхода из состояния дочернего процесса. Как правило, состояние выхода 0 указывает, что оно успешно выполнено.

Отрицательное значение -N указывает, что дочерний процесс был прерван сигналом N (только POSIX).

complete.stdout:

Атрибут stdout возвращает захваченный стандартный вывод stdout от дочернего процесса.

Представляет из себя последовательность байтов или строка - если [subprocess.run()][subprocess.run] была вызвана с параметрамиencodingиerrorsили аргументtextимеет значениеTrue`.

Будет иметь значение None, если не был захвачен стандартный вывод.

Если процесс запущен с stderr=subprocess.STDOUT, тоstdoutиstderrбудут объединены в этом атрибуте, аstderrбудетNone`.

complete.stderr:

Атрибут stdout возвращает захваченный stderr от дочернего процесса.

Представляет из себя последовательность байтов или строка - если [subprocess.run()][subprocess.run] была вызвана с параметрамиencodingиerrorsили аргументtextимеет значениеTrue`.

Будет иметь значение None, если не был захвачен стандартный вывод.

complete.check_returncode():

Метод complete.check_returncode() вызывает исключение CalledProcessError, если код возврата returncode не равен нулю.

Примеры использования:

>>> import subprocess
>>> complete = subprocess.run('ls -ls /tmp/*tpl', shell=True, \
                            stdout=subprocess.PIPE, encoding='utf-8')
>>> complete.stdout
# '4 -rw------- 1 docs-python docs-python 317 мая 12 09:56 /tmp/tmp-26999MFPH5MgIW157.tpl\n'
>>> complete.returncode
# 0
>>> complete.args
# ['ls', '-ls', '/tmp/*tpl']