国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

Python如何執(zhí)行系統(tǒng)命令

瀏覽:41日期:2022-07-10 11:36:06

一、背景說明

以前就感覺進步的速度和博客的數(shù)量成正比,所以很長一段時間內(nèi)想不通為什么很多博客為什么到最后很少甚至不在更新了,直到最近自己也快成為斷更的一員。

這段時間其實碰到和解決了挺多典型的問題,但上班高負(fù)荷運轉(zhuǎn)下班沒心思周末覺得太耗費時間,就導(dǎo)致一直拖著沒寫。

但Python執(zhí)行系統(tǒng)命令這個問題,從學(xué)Python之初就一直在困擾,到最近又反復(fù)幾次在上邊遇到問題,實在是受不了。

二、Python執(zhí)行系統(tǒng)命令的實現(xiàn)方式

2.1 執(zhí)行命令不需要獲取命令輸出--os.system

有時候我們只需要執(zhí)行命令并不需要獲取命令的執(zhí)行輸出,此時我們就可以使用os.system()實現(xiàn)。

os.system()是C語言system()函數(shù)的封裝,返回命令的退出狀態(tài)碼,命令執(zhí)行結(jié)果輸出到標(biāo)準(zhǔn)輸出(stdout/窗口)。

使用示例如下:

import oscommand = 'ifconfig'exit_code = os.system(command)# 理論上command是一個字符串,但實際看command還是得變?yōu)樽止?jié)數(shù)組# 當(dāng)命令中存在中文時可能會報編碼錯誤,此時可以自己給命令編一下碼# exit_code = os.system(command.encode('gbk'))

參考:https://docs.python.org/3/library/os.html#os.system

2.2 執(zhí)行系統(tǒng)命令并獲取命令輸出--os.popen()

如果我們想要獲取命令的輸出os.system()是不能實現(xiàn)的,此時可以使用os.popen()來實現(xiàn)。使用示例如下:

import oscommand = 'ifconfig'command_output = os.popen(command).readlines()print(command_output)

2.3 Python3更好的實現(xiàn)方式--subprocess

Python3引入了封裝程序更高的subprocess模塊。使用示例如下:

import subprocesscommand = 'ifconfig'# 命令如果帶參數(shù)則不能直接使用字符串的形式,不然后報FileNotFoundError: [Errno 2] No such file or directory: ’ifconfig -a’等錯誤# 此時有兩種處理辦法,一種是寫成以空格為分割的列表形式。可借助shlex.split(command_line)實現(xiàn)自動分割# command = ['ifconfig', '-a']# 別一種是將shell參數(shù)置為True# completed_process_obj = subprocess.run(command, shell=True)# 當(dāng)配置了stdout參數(shù),completed_process_obj的stdout屬性就會保存命令的輸出completed_process_obj = subprocess.run(command, stdout=subprocess.PIPE)print(completed_process_obj.stdout.decode())# subprocess.Popen()基礎(chǔ)參數(shù)和run()差不多,比run()對命令進程有更強的控制能力。其也能用來獲取命令輸出# popen_obj = subprocess.Popen(command, stdout=subprocess.PIPE, shell=True)# print(popen_obj.stdout.readlines())# 其他如subprocess.call()、subprocess.check_call()、subprocess.check_output()都是舊方法了,Python3.5+都建議用run()

參考:https://docs.python.org/3/library/os.html#os.popen

以上就是Python如何執(zhí)行系統(tǒng)命令的詳細(xì)內(nèi)容,更多關(guān)于Python執(zhí)行系統(tǒng)命令的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 久久精品国产99国产精品 | 亚洲一区国产 | 国产精品99久久久 | 国产区精品在线 | 一级做a爱片久久毛片 | 在线亚洲综合 | 欧美日韩另类国产 | 女人扒开腿让男人捅啪啪 | 国产精品blacked在线 | 中文字幕免费在线视频 | 中文字幕一二三区乱码老 | 特黄日韩免费一区二区三区 | 亚洲欧美日韩国产精品一区 | 最新怡红院全部视频在线 | 日韩三级黄色片 | 一本色道久久爱88av | 国产一级一国产一级毛片 | 国产一区二区三区免费大片天美 | 香蕉tv亚洲专区在线观看 | 亚洲人成在线免费观看 | 波多野结衣一区二区 三区 波多野结衣一区二区三区88 | 国产美女视频做爰 | 白云精品视频国产专区 | 一级做a爰片性色毛片小说 一级做a爰片性色毛片中国 | 91国在线高清视频 | 国外成人在线视频 | 精品久久久久久久高清 | 亚洲国产天堂久久九九九 | 大片国产片日本观看免费视频 | 国内一区| 亚洲在线视频免费 | 久久久久久久久一级毛片 | 国产精品合集久久久久青苹果 | 欧美人成毛片在线播放 | 亚洲精品高清国产一久久 | 亚洲精品国产高清不卡在线 | 91精品一区二区三区在线观看 | 国产一级特黄特色aa毛片 | 欧美大片毛片aaa免费看 | 日本韩国中文字幕 | 欧美一级毛片片aa视频 |