python調用Windows的cmd命

關於python調用cmd命令:

主要介紹兩種方式:

python的os模塊

os模塊調用CMD命令有兩種方式:os.popen(),os.system() 都是用當前進程來調用。

os.system是無法獲取返回值的。當運行結束後接着往下面執行程序。

用法如:os.system(「ipconfig」)

import os    os.system("ipconfig")    執行結果如下:    Windows IP 配置      無線局域網適配器 無線網絡連接:       媒體狀態  . . . . . . . . . . . . : 媒體已斷開     連接特定的 DNS 後綴 . . . . . . . :    以太網適配器 本地連接:       連接特定的 DNS 後綴 . . . . . . . :     本地鏈接 IPv6 地址. . . . . . . . : fe80::e1c4:78dd:65a8:7bac%13     IPv4 地址 . . . . . . . . . . . . : 192.168.180.102     子網掩碼  . . . . . . . . . . . . : 255.255.255.0     默認網關. . . . . . . . . . . . . : 192.168.180.1

OS.popen帶返回值的,如何獲取返回值。

如下:

  p = os.popen(cmd)

print p.read()   #得到的是個字符串。

import os    d = os.popen("ipconfig")  print(d.read())    執行結果如下:    Windows IP 配置      無線局域網適配器 無線網絡連接:       媒體狀態  . . . . . . . . . . . . : 媒體已斷開     連接特定的 DNS 後綴 . . . . . . . :    以太網適配器 本地連接:       連接特定的 DNS 後綴 . . . . . . . :     本地鏈接 IPv6 地址. . . . . . . . : fe80::e1c4:78dd:65a8:7bac%13     IPv4 地址 . . . . . . . . . . . . : 192.168.180.102     子網掩碼  . . . . . . . . . . . . : 255.255.255.0     默認網關. . . . . . . . . . . . . : 192.168.180.1

這兩個都是用當前進程來調用,也就是說它們都是阻塞式的。