日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

shell调用python函数 参数 返回_Python之系统shell交互(subprocess)

發布時間:2025/3/20 python 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 shell调用python函数 参数 返回_Python之系统shell交互(subprocess) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

subprocess是Python 2.4中新增的一個模塊,它允許你生成新的進程,連接到它們的 input/output/error 管道,并獲取它們的返回(狀態)碼。這個模塊的目的在于替換幾個舊的模塊和方法,如:os.system

os.spawn*

1. subprocess模塊中的常用函數函數描述subprocess.run()Python 3.5中新增的函數。執行指定的命令,等待命令執行完成后返回一個包含執行結果的CompletedProcess類的實例。

subprocess.call()執行指定的命令,返回命令執行狀態,其功能類似于os.system(cmd)。

subprocess.check_call()Python 2.5中新增的函數。執行指定的命令,如果執行成功則返回狀態碼,否則拋出異常。

其功能等價于subprocess.run(..., check=True)。

subprocess.check_output()Python 2.7中新增的的函數。執行指定的命令,如果執行狀態碼為0則返回命令執行結果,否則拋出異常。

subprocess.getoutput(cmd)接收字符串格式的命令,執行命令并返回執行結果,其功能類似于os.popen(cmd).read()和commands.getoutput(cmd)。

subprocess.getstatusoutput(cmd)執行cmd命令,返回一個元組(命令執行狀態, 命令執行結果輸出),其功能類似于commands.getstatusoutput()。

說明:

在Python 3.5之后的版本中,官方文檔中提倡通過subprocess.run()函數替代其他函數來使用subproccess模塊的功能;

在Python 3.5之前的版本中,我們可以通過subprocess.call(),subprocess.getoutput()等上面列出的其他函數來使用subprocess模塊的功能;

subprocess.run()、subprocess.call()、subprocess.check_call()和subprocess.check_output()都是通過對subprocess.Popen的封裝來實現的高級函數,

因此如果我們需要更復雜功能時,可以通過subprocess.Popen來完成。

subprocess.getoutput()和subprocess.getstatusoutput()函數是來自Python 2.x的commands模塊的兩個遺留函數。它們隱式的調用系統shell,并且不保證其

他函數所具有的安全性和異常處理的一致性。另外,它們從Python 3.3.4開始才支持Windows平臺。

2. 上面各函數的定義及參數說明

函數參數列表:

subprocess.run(args, *, stdin=None, input=None, stdout=None, stderr=None, shell=False, timeout=None, check=False, universal_newlines=False)

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

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

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

subprocess.getstatusoutput(cmd)

subprocess.getoutput(cmd)

總結

以上是生活随笔為你收集整理的shell调用python函数 参数 返回_Python之系统shell交互(subprocess)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。