日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Python常用外部指令執行代碼實例

瀏覽:94日期:2022-07-06 11:51:55

1、os.system()

阻塞

屏幕會打印命令的輸出

返回命令結果碼

# -*- encoding=utf-8 -*-import osif __name__ == ’__main__’: pass print(’開始’) ret1 = os.system(’python’) print(’ret1:{}’.format(ret1)) ret2 = os.system(’java -version’) print(’ret2:{}’.format(ret2)) print(’結束’)

運行

Python常用外部指令執行代碼實例

可能有人理解阻塞是因為運行了python,因此我嘗試兩個命令都用java -version

# -*- encoding=utf-8 -*-import osif __name__ == ’__main__’: pass print(’開始’) ret1 = os.system(’java -version’) print(’ret1:{}’.format(ret1)) ret2 = os.system(’java -version’) print(’ret2:{}’.format(ret2)) print(’結束’)

運行

Python常用外部指令執行代碼實例

2、os.popen()

阻塞或不阻塞

屏幕不會打印出命令的輸出

返回文件對象,可用read,readline讀取

不阻塞時:

# -*- encoding=utf-8 -*-import osif __name__ == ’__main__’: pass print(’開始’) os.popen(’python’) ret2 = os.popen(’java -version’) print(’結束’)

運行(程序很快打印開始和結束,就像只用了兩個print語句一樣快)

Python常用外部指令執行代碼實例

阻塞時:

# -*- encoding=utf-8 -*-import osif __name__ == ’__main__’: pass print(’開始’) ret1 = os.popen(’python’) print(ret1.read()) ret2 = os.popen(’java -version’) print(ret2.read()) print(’結束’)

運行

Python常用外部指令執行代碼實例

3、commands.getstatusoutput

python2.+中使用

需要到linux運行

阻塞或者非阻塞

屏幕不會打印出命令的輸出

非阻塞時

# -*- encoding=utf-8 -*-import commandsif __name__ == ’__main__’: pass print(’開始’) ret1 = commands.getstatusoutput(’python’) ret2 = commands.getstatusoutput(’java -version’) print(’結束’)

運行

Python常用外部指令執行代碼實例

阻塞時:

# -*- encoding=utf-8 -*-import commandsif __name__ == ’__main__’: pass print(’開始’) ret1 = commands.getstatusoutput(’python’) print ret1[0] print ret1[1] print ’==============’ ret2 = commands.getstatusoutput(’java -version’) print ret2[0] print ret2[1] print ’==============’ print(’結束’)

運行

Python常用外部指令執行代碼實例

4、subprocess中Popen

阻塞或非阻塞,同上面一樣,通過是否讀取IO決定是否阻塞

屏幕會打印出命令的輸出

可通過stdout,stderr參數指定輸出或錯誤打印到文件

# -*- encoding=utf-8 -*-import subprocessif __name__ == ’__main__’: pass print(’開始’) s1 = subprocess.Popen(’python’) s1.wait() s2 = subprocess.Popen(’java -version’) s2.wait() print(’結束’)

運行

Python常用外部指令執行代碼實例

4.1、 輸出到文件

通過文件對象來輸出到文件中

# -*- encoding=utf-8 -*-import subprocessif __name__ == ’__main__’: pass print(’開始’) with open(’s1.txt’, ’w’) as f: s1 = subprocess.Popen(’python’, stdout=f, ) # 指定輸出重定向到文件 s1.wait(10) # 超過10秒還沒執行完會拋出異常 with open(’s2.txt’, ’w’) as f: s2 = subprocess.Popen(’java -version’, stdout=f, stderr=f) # 指定輸出和錯誤都重定向到文件 s2.wait() print(’結束’)

運行后可看到文件已經寫入,屏幕不打印。需要注意是stdout還是stderr。

4.2、捕獲輸出和錯誤

PIPE通過開一個新的管道來接收運行狀態

# -*- encoding=utf-8 -*-import subprocessif __name__ == ’__main__’: pass print(’開始’) s1 = subprocess.Popen(’java -version’, stdout=subprocess.PIPE, stderr=subprocess.PIPE) s1.wait(10) # 超過10秒還沒執行完會拋出異常 print(s1.returncode) # 結果碼 print(s1.poll()) # 已經執行結束返回結果碼,否則返回None std1 = s1.stdout.read() print(’std_out:{}’.format(std1)) std2 = s1.stderr.read() print(’std_err:{}’.format(std2)) print(’結束’)

運行

Python常用外部指令執行代碼實例

5、subprocess.call

用來替代os.system

阻塞

# -*- encoding=utf-8 -*-import subprocessif __name__ == ’__main__’: pass print(’開始’) s1 = subprocess.call(’java -version’, ) print(s1) s2 = subprocess.call(’python’, ) print(s2) s3 = subprocess.call(’python’, timeout=3) # 超時拋出異常 print(s3) print(’結束’)

6、check_call()和check_output()

都會檢查結果碼,不是0就拋出異常

check_call()返回狀態碼

check_output()返回輸出

# -*- encoding=utf-8 -*-import subprocessif __name__ == ’__main__’: pass print(’開始’) s1 = subprocess.check_call(’java -version’, ) print(s1) s2 = subprocess.check_output(’java -version’, ) print(s2) print(’結束’)

運行

Python常用外部指令執行代碼實例

使用上面提到的三個方法:call()、check_call() 和 check_output() 時,盡量不要將參數stderr和stdout設置為 subprocess.PIPE,這幾個函數默認都會等待子進程完成,子進程產生大量的輸出數據如果造成管道堵塞,父進程再等待子進程完成可能造成死鎖。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产v日韩v欧美v| 日韩三级视频| 欧美国产先锋| 国产精品调教| 国产精品啊啊啊| 国产精品sm| 国产一区不卡| 韩国久久久久久| 蜜桃视频在线网站| 日韩欧美另类一区二区| 日韩国产欧美| 国产va免费精品观看精品视频| 精品久久美女| 日韩伦理在线一区| 一本大道色婷婷在线| 久久久成人网| 激情91久久| 五月国产精品| 久久av资源| 色黄视频在线观看| 91精品国产成人观看| 黄色亚洲精品| 亚洲人成网77777色在线播放| 亚洲精选久久| 国产精品videossex| av最新在线| 亚洲第一精品影视| 国产亚洲网站| 你懂的亚洲视频| 日本精品影院| 先锋影音久久久| 青青草视频一区| 国产999精品在线观看| 香蕉国产精品| 日韩二区在线观看| 91亚洲国产高清| 亚洲激情偷拍| 国产精品九九| 亚洲福利专区| 欧美日韩18| 久久精品中文| 三级一区在线视频先锋| 国产精品magnet| 欧美a级片一区| 91精品日本| 日韩欧美少妇| 婷婷视频一区二区三区| 日本一区二区免费高清| 久久亚洲视频| 精品国产亚洲一区二区三区大结局| 九九久久电影| 国产乱人伦丫前精品视频| 久久九九精品| 日韩avvvv在线播放| 97国产成人高清在线观看| 国产日韩综合| 国产精品日本一区二区不卡视频| 99久久激情| 日韩欧美中文字幕在线视频| 国产一区二区三区不卡视频网站| 亚洲主播在线| 97精品在线| 中文字幕av亚洲精品一部二部| 精品国产一级| 免费观看在线色综合| 精品美女视频| 亚洲日本欧美| 成人午夜国产| 国产精品黄网站| 亚洲欧美激情诱惑| 日韩大片在线| 国产欧美在线| 99热精品在线观看| 久久久亚洲欧洲日产| 在线视频亚洲| 日本一二区不卡| 日韩精品第二页| 91久久国产| 国产aⅴ精品一区二区三区久久| 一二三区精品| 日韩免费精品| 国产韩日影视精品| а√天堂中文在线资源8| 欧美欧美黄在线二区| 欧美日韩国产探花| 国产福利片在线观看| 日本va欧美va欧美va精品| 日韩亚洲在线| 欧美日韩中文字幕一区二区三区| 久久精品资源| 国产精品网址| 日韩高清电影免费| 亚洲丝袜美腿一区| 99在线精品视频在线观看 | 欧美日韩激情在线一区二区三区| 久久只有精品| 青青草精品视频| 一区二区国产在线| 免费精品视频| 在线亚洲自拍| 日韩精品影视| 久久精品青草| 日韩中文影院| 蜜臀国产一区| 成人在线视频区| 麻豆视频久久| 久久不见久久见中文字幕免费| 日韩av网站在线免费观看| 亚洲tv在线| 亚洲精品大片| 综合激情网...| 蜜桃视频一区二区| 免费在线观看一区二区三区| 午夜欧美精品| 婷婷六月综合| 免费观看不卡av| jiujiure精品视频播放| 欧美日韩激情在线一区二区三区| 久久国产直播| 亚洲网站视频| 国产亚洲一区在线| 日韩在线一二三区| 亚洲丝袜啪啪| 欧美日韩视频免费看| 国产精品一区三区在线观看| 国产精品亚洲四区在线观看| 国产精品天堂蜜av在线播放| 国产精品久久久久久妇女| 国产精品视频3p| 久久精品九色| 国产欧洲在线| 激情五月综合网| 免费观看在线色综合| 日韩不卡一二三区| 国产精品欧美大片| 成人台湾亚洲精品一区二区| 成人片免费看| 国产综合激情| 水蜜桃久久夜色精品一区的特点| 蜜桃av一区二区在线观看| 日韩欧美2区| 国产免费播放一区二区| 精品亚洲自拍| 蜜桃精品在线| 亚洲一区网站| 日韩精品一区二区三区中文字幕| 国产美女久久| 久久亚洲道色| 丝袜av一区| 免费在线观看日韩欧美| 日韩av中文字幕一区二区 | 国产精品宾馆| 日韩大片在线| 亚洲男女自偷自拍| 国产一区 二区| 涩涩av在线| 亚洲主播在线| 国产欧美日韩一级| 国产精品精品| 亚洲一区二区动漫| 国产精品任我爽爆在线播放| 日韩免费福利视频| 视频在线在亚洲| 久久av国产紧身裤| 久久影院一区| 婷婷精品在线| 日韩国产欧美一区二区| 久久不射中文字幕| 国产福利资源一区| re久久精品视频| 欧美日韩亚洲三区| 欧美日韩尤物久久| 亚洲伊人影院| 久久精品国产一区二区| 91九色精品国产一区二区| 日韩激情视频网站| 天堂√中文最新版在线| 综合激情网...| 亚洲精品**中文毛片| 天堂成人免费av电影一区| 麻豆精品新av中文字幕| 精品1区2区3区4区| 精品一区视频| 国产一区91| 精品国产一区二区三区噜噜噜| 欧美日韩少妇| 精品深夜福利视频| 蜜桃视频在线观看一区二区| 欧美精品不卡| 中文在线一区| 精品国产午夜肉伦伦影院| 亚洲激情二区| 精品视频在线观看网站| 天堂成人国产精品一区| 精品一区二区三区中文字幕| 美女网站久久| 亚洲黄色网址| 国产精品亚洲片在线播放| 午夜一级在线看亚洲| 在线看片国产福利你懂的|