1
如何將參數傳遞給Python中的系統shell,並將輸出作爲數組或字符串返回?Python 3 os.system從系統shell輸出?
如何將參數傳遞給Python中的系統shell,並將輸出作爲數組或字符串返回?Python 3 os.system從系統shell輸出?
os.system
不是爲了這樣做而設計的; os.popen
是。兩者都被subprocess
module廢棄,應該用於編寫新代碼。要捕獲shell命令的輸出,您將實例化一個subprocess.Popen
對象並調用communicate()
來檢索其輸出。
除上述外,the utility function check_output
,在Python 2.7新的,是一個插件,更換外殼反引號,即你通過它要執行的命令,並取回輸出作爲一個字符串:
>>> subprocess.check_output(['ls', '-a'])
'.\n..\n'
謝謝,大大的幫助 – John
你應該查看['subprocess'](http://docs.python.org/3.3/library/subprocess.html)模塊,特別是['check_output'](http://docs.python.org /3.3/library/subprocess.html#subprocess.check_output)函數。 – Nicolas