這是我的任務。給定一個由 n 位(單個數字)組成的字串,其中包含 n-1 個操作字符,每個字符可以是 或 -。計算這個運算式的值。程式必須列印這個運算式的計算結果這是我的代碼,但它不起作用
a = "1 5 3----2----9".replace(" ", " ").replace("----", "-")
print(int(str(a)))
ValueError: int() 以 10 為底的無效文字:'1 5 3-2-9'
uj5u.com熱心網友回復:
在 Python 中,為了計算運算式,您必須使用eval()
函式。
旁注:該replace()
方法回傳一個str
. 因此,您不必將其投射到str
所以,結果代碼如下
a = "1 5 3----2----9".replace(" ", " ").replace("----", "-")
print(eval(a))
輸出
-2
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/490508.html
標籤:Python python-3.x python-2.7
下一篇:如何從文本創建變數并轉換坐標