-4
在linux上的Python中os.system(' ')
和commands.getstatusoutput(' ')
有什麼不同?在Linux上的python中的os.system('')和commands.getstatusoutput('')有什麼不同?
如果你能舉個例子,我會非常感激。
感謝
在linux上的Python中os.system(' ')
和commands.getstatusoutput(' ')
有什麼不同?在Linux上的python中的os.system('')和commands.getstatusoutput('')有什麼不同?
如果你能舉個例子,我會非常感激。
感謝
os.system
運行外部殼命令並返回一個整數,其爲0表示成功,任何其他值是失敗的。如果正在運行的命令將某些內容發送到標準輸出或標準錯誤,它只會被打印,但不能將其分配給變量。
command.getstatusoutput
做和os.system
一樣的「非常」的事情,並返回一個元組,狀態碼是第一個元素,狀態消息是第二個元素。
在引擎蓋下,command.getstatusoutput
做的事情不同於os.system
。它使用os
模塊。它特別使用os.popen
,並將所有stderr
輸出重定向爲與stdout
輸出組合,並從stdout
讀取狀態消息。
必須說的是,subprocess
模塊是做上述兩個命令可以做的事情以及更多的新方法。
檢查他們的文檔,不要使用它們中的任何一個。 ['subprocess'](https://docs.python.org/2/library/subprocess.html)模塊是要走的路。 –