python2.7.12 subprocess模塊文檔翻譯

17.1 subprocess

這個模塊允許你產生子線程,連接他們(主線成,和產生的子線程)之間的輸入/輸出/錯誤 管道(pipes,管道是一種把兩個進程之間的標準輸入和標準輸出連接起來的機制,從而提供一種讓多個進程間通信的方法)。這個模塊想要替換一些比較舊的模塊和方法:

os.system

os.spawn*

os.popen*

popen2.*

commands.*

17.1.1 使用subprocess

在使用subprocess時推薦調用以下幾個方來完成你的需求。如果有更高級的情況,可以使用Popen接口。

subprocess.cell(args, *, stdin=None, stdout=None, stderr=None, shell=False)

根據args參數運行命令,等待命令執行結束,返回進程返回值

>>>subprocess.call(["ls","-l"])

0

>>>subprocess.call("exit 1",shell=True)

1

subprocess.check_call(args,*,stdin=None,stdout=None,stderr=None,shell=False)

根據args參數運行命令,等待命令執行結束,如果進程返回值為0則返回(return),否則會raise一個CalledProcessError錯誤,CalledProcessError類的returncode屬性會包含進程返回值。

>>>subprocess.check_call(["ls","-l"])

0

>>>subprocess.check_call("exit 1",shell=True)

Traceback (most recent call last):

? ? ...

subprocess.CalledProcessError:Command 'exit 1' returned non-zero exit status 1

subprocess.check_output(args,*,stdin=None,stderr=None,shell=False,universal_newlines=False)

正在更新....

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容