Skip to main content
 首页 » 编程设计

python之加减

2025年05月04日18落叶

我需要帮助返回表达式的值(表达式是函数的参数)。

这是我目前尝试过的。这只是一个随机方程的例子,我的计划是了解如何正确求解它,以便稍后将其转换为函数

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() 函数:

>> eq = "2+4-5" 
>> eval(eq) 
1 

如评论中所述,eval() 评估作为潜在危险的 Python 代码传递的字符串。