pythonのsubprocess.popenでタイムアウト時間を設定する方法は何ですか?

Pythonで、サブプロセスのラン()関数を使用してタイムアウト時間を設定することができます。 subproces.run()関数は、Python 3.5で導入されました。外部コマンドを簡単に実行し、その完了を待つことができます。

以下はタイムアウト時間を設定するサンプルコードです。

import subprocess

# 执行命令,并设置超时时间为5秒
try:
    result = subprocess.run(['command', 'arg1', 'arg2'], timeout=5, check=True)
    # 如果命令成功执行,可以通过result的属性获取命令的输出、返回码等信息
    print('命令输出:', result.stdout)
    print('返回码:', result.returncode)
except subprocess.TimeoutExpired:
    # 如果超时,可以在这里处理超时情况
    print('命令执行超时')
except subprocess.CalledProcessError as e:
    # 如果命令执行失败,可以在这里处理失败情况
    print('命令执行失败:', e.returncode, e.output)

上記の例のコードでは、subprocess.run()関数のtimeoutパラメータは、秒単位でタイムアウト時間を設定するために使用されます。タイムアウト時間内にコマンドが完了しない場合、subprocess.TimeoutExpired例外が発生します。

bannerAds