Python计算器,没有答案

时间:2015-03-16 13:22:48

标签: python class python-2.7 if-statement

我对 Python 非常感兴趣,我决定学习它。 我介绍了很多东西,但是当我尝试制作一个只需要输入数字和操作类型的计算器时我就陷入困境

例如 - 10 ^ 2

发生的事情是我得不到答案。我使用命令提示符 输出。

我的代码如下:

 # Calculator



print " "
print "  Calculator  "
print " "

num = int(raw_input(">> ")).split()

num1 = int(num[0])

op = num[1]

num2 = int(num[2])

if (op=='+'):

    print ">>>", num1 + num2
elif (op=='-'):

    print ">>>", num1 - num2
elif (op=='*'):

    print ">>>", num1 * num2
elif (op=='/'):

    print ">>>", num1 / num2
elif (op=='^'):

    print ">>>", pow(num1,num2)
elif (op=='%'):

    print ">>>", num1 % num2

我使用Python 2.7。

请帮助我做同样的事。

3 个答案:

答案 0 :(得分:1)

你必须删除int强制转换,即

num = raw_input(">> ").split() # remove the int cast

输出将是:

>> 10 ^ 2
>>> 100

答案 1 :(得分:1)

更改

num = int(raw_input(">> ")).split()

num = raw_input(">> ").split()

例如,如果您输入2 ^ 10,则num现在将成为数组['2', '^', '10'],其余代码将有效。

如果您在int()上执行raw_input,则无法使用,因为您尝试将"2 ^ 10"之类的字符串转换为int。

答案 2 :(得分:0)

num = int(raw_input(">> ")).split()

应更改为

num = (raw_input(">> ")).split()

至少我不能将数字拆分