2016-02-29 126 views
1

我被困在如何在变量中进行计算。目前我的代码将打印(例如):(1,'+',2)。但我需要答案的实际总和..我的代码:计算变量的总和

def calc(num1,op,num2): 
    sum = num1,op,num2 
    print(sum) 

num1 = int(input("First number:")) 
op = input("Operator:") 
num2 = int(input("Second number:")) 

calc(num1,op,num2) 
+0

我认为这不是一个OP的证据表明它是重复的。关键是'+'(符号)和'add'(函数)是不同的东西。 –

回答

4

这可以帮助你.....

def calc(x=0, y=0, z=0): 
    expression = raw_input('Enter an expression: ') 

    return eval(expression, None, locals()) 

例子:

>>> calc() 
Enter an expression: 8 + 5 - 7 
6 
+0

'eval'在这里真的不是一个好选择。这是您可能感兴趣的一个很好的解释:http://stackoverflow.com/a/1832957/1832539 – idjaw