-2

我的老师要求我制作一个计算器,可以计算提交价格的 15% 小费。我遵循了这个 python 应用程序的在线教程。在做老师要求的东西之前,我做了一个简单的加减乘除计算器练习。在 YouTube 视频中,我跟踪了在他的计算机上运行的 python 应用程序。我在 Python Shell 中收到“无效语法”错误。我正在使用 Python 3.3.0。谢谢你。

编辑:我遵循了一个不同的教程,弄清楚了如何完成我的项目。我遇到的唯一问题是同时使用常规整数(1、2、3、4 等)和浮点整数(4.36、5.45 等)。


print("Welcome to the calculator!")

mealPrice = int(input("Enter your meal price:"))

asw = mealPrice * 0.15

print("The tip you owe is: ", asw)
4

6 回答 6

1

因为 y 是字符串

y = int(raw_input("Input second integer: "))
于 2013-01-30T18:43:32.313 回答
0

而不是转换为 int (因此无论您的值是什么 - 例如,2.99 变为 2)转换为 float 应该可以很好地解决问题;即使您使用 2.0*0.15 而不是 2*0.15,小费计算也应该有效。

这显然只有在您知道可以期待什么输入时才有效。如果有人输入任何无效的内容,它将非常失败。

于 2013-01-30T20:19:23.630 回答
0

这有很多改变要做。首先,第一行代码应该是:

print ("Hello")

然后,raw_input() 应该变成 input()。

接下来,除了在定义函数时的第二行之外,calc() 之后不应有冒号或分号。

代码应该看起来像这样。试试看。

print ("Hello")
def calc():
    x = int(input("Input first integer: "))
    y = int(input("Input second integer: "))
    type = str.lower(input("(A)dd, (S)ubstract, (M)ultiply, (D)ivide \n"))
    if type != "a" and type != "s" and type != "m" and type != "d":
        print ("Sorry, the command you entered is not valid.")
        calc()
    else:
        if type =="a":
            print ("The result is '" + str(x+y) + "'")
        elif type == "s":
            print ("The result is '" + str(x-y) + "'")
        elif type =="m":
            print ("The result is '" + str(x*y) + "'")
        elif type == "d":
            print ("The result is '" + str(float(x)/float(y)) + "'")

        if int(input("Enter 1 if you would like to perform another calculation? \n")) == 1:
            calc()
        else:
            exit()
calc()

希望这可以帮助。

于 2013-01-30T19:14:44.857 回答
0

我发现您的代码存在一些问题。

print在第一行使用 会给您带来麻烦,因为print它是 Python 3 中的一个函数。您应该将其称为print("hello").

在第 8 行,您有一个额外的冒号:

calc():

摆脱它。

最后,调用时不需要分号calc()

于 2013-01-30T18:46:47.813 回答
0

如果要使用整数:

mealprice = int(input("Enter your meal price:"))

如果你想使用浮动:

mealprice = float(input("Enter your meal price:"))

建议使用浮点数,因为您还可以使用单个数字,例如 1、2、3 等,也可以使用浮点数。

我还创建了自己的计算器,它有 6 个功能:

1 = Add  
2 = Subtract  
3 = Multiply  
4 = Divide  
5 = Round Off  
6 = Get Remainder  

就是这么简单。
我还没有使用四舍五入。
如果你想要那个代码问我我会给你。
如果您想了解更多信息,我已准备好提供给您。

于 2017-06-16T15:01:05.793 回答
-1

我想到了。我应该使用:

int(float(input("Enter your meal price:")))

谢谢大家!

于 2013-01-30T19:10:43.503 回答