Python: как ждать код возврата процесса, используя subprocess.call - PullRequest
0 голосов
/ 07 апреля 2019

Я использую subprocess.call для запуска exe-файла с аргументами следующим образом:

def run_file(self, file_path):
    subprocess.call([r'c:\file.exe', self.server_ip_address, file_path])

Это отлично работает, но теперь я хочу дождаться моего return code.

Итак, я пытаюсь использовать этот подход:

def run_file(self, file_path):
    process = subprocess.call([r'c:\file.exe', self.server_ip_address, file_path])
    process.wait()
    print(process.returncode)

И получил это error:

process.wait() AttributeError: 'int' object has no attribute 'wait'

1 Ответ

0 голосов
/ 07 апреля 2019

Используйте subprocess.run вместо subprocess.call. Это блокирует, поэтому нет необходимости для wait.
https://docs.python.org/fr/3/library/subprocess.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...