分裂的Python问题

时间:2017-07-21 15:43:20

标签: python calculator

我一直在尝试制作一个计算器,你输入一个数字,然后计算器将它除以10乘以4乘以得出40%,然后输出最终数字。

a = input("Enter amount: ")
b = a / 10
c = b * 4
print(c)

当我运行代码时,收到此错误消息: TypeError:/:' str'不支持的操作数类型和' int'

2 个答案:

答案 0 :(得分:3)

a = int(input("Enter amount: "))
b = a / 10
c = b * 4
print(c)

正常输入将输入视为string,您需要将其转换为int

答案 1 :(得分:1)

您应始终努力使用最少量的代码来完成任务。没有理由有3个单独的变量来得到答案。

如果您确定要始终输入整数,则可以执行以下操作:

print(int(input("Enter amount: ")) * 0.4)

但是,您无法保证输入的整数,因此您需要进行一些错误检查

由于input始终返回字符串这一事实,您的错误正在消失。你必须有一个int或一个浮点数来做基本的数学运算。所以你可以通过几种方式实现这一目标。

您可以在int()之类的输入语句中使用int(input("Enter amount: ")),但只要用户输入除int之外的任何内容,您就会收到错误。

我这样做的方法是检查input的值是否为int,然后继续。

def if_int_get_40_percent():

    try:
        print(int(input("Enter amount: ")) * 0.4)
    except:
        if_int_get_40_percent()

if_int_get_40_percent()