2013-03-20 53 views
0

如何在操作中使用算術運算符(用戶輸入爲字符串)?我可以打印操作本身,但我想打印解決方案!Python中的字符串,整型和運算符

這裏是我的笨拙嘗試:

# Initialise variables 

x = 2 
y = 3 

# Prompt the user for an arithmetic operator 

operator = input("Please enter *, /, +, or - : ") 

# Calculate the operation 

result = (str(x) + operator + str(y)) 

# Display the result 

print(result) 

回答

4

使用operator module,它具有執行相同的操作,你的算術運算功能。

import operator 
ops = {'*': operator.mul, '/': operator.div, '+': operator.add, '-': operator.sub} 

op = input("Please enter *, /, +, or - : ") 
result = ops[op](x, y) 
+0

該OP應該可能重命名他們的'操作員'是別的東西,雖然.... – 2013-03-20 10:48:18

+0

@JonClements:確實;糾正。 – 2013-03-20 10:49:14

+0

謝謝Martijn!我不得不將'operator.div'更改爲'operator.truediv',然後它完美地工作。我會提高你的答案,但我沒有足夠的'聲譽'! – 2013-03-20 11:30:07