我試圖在Python(2.6.4)中執行一個shell命令來在將它作爲參數傳遞給另一個程序之前評估一個簡單的公式。我的輸入是簡單的東西是這樣的:使用Popen獲取Python命令的輸出
$ [2 * 2]
我想以評估表達,並從我的Python腳本中得到的結果,所以我可以在以後使用它。目前,我這樣做(其中token
爲$[2*2]
):
token = subprocess.Popen(["echo", token], stdout=subprocess.PIPE).communicate()[0].strip()
我希望可以將輸出爲4
,而是它只是給我回我原來的令牌($[2*2]
)。顯然,當我跳到shell並手動運行此命令(echo $[2*2]
)時,我得到4
正如預期的那樣。
有沒有什麼特別的關於Python如何執行這個命令,我錯過了?
這可能是重複。我做了一些搜索,但我沒有很快找到答案。隨時關閉它。 –
這實際上是一個__FAQ__,應該在標記wiki上。 – devnull