[英]Addition and Subtraction
我需要幫助返回表達式的值(表達式是函數的參數)。
這是我到目前為止所嘗試的。 這只是一個隨機方程的例子,我的計划是了解如何正確解決它,以便稍后將其轉換為 function
sum = 0
eq = '2+4-5'
string = ""
for x in eq:
if x in ('+', '-'):
if x == '+':
sum += int(string)
elif x == "-":
sum -= int(string)
string = ""
else:
string += x
sum += int(string)
print(sum)
"1+2" => 3 # input = "1+2" and the output of the function would be 3
"-1+21" => 20
"+1-1" => 0
查找 eval() function:
>> eq = "2+4-5"
>> eval(eq)
1
正如評論中所說的 eval() 評估作為 Python 代碼傳遞的字符串,這具有潛在的危險。
試試這個:
import re
eq = '+1-1'
ls = [int(i) for i in re.findall('[-+]?[0-9]+', eq)]
res = sum(ls)
print(res)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.