除法时不断出现 ValueError。

Keep getting a ValueError when dividing.

当我运行这个功能时,一切都很好。我可以将 x 设置为 90,将 y 设置为 9,然后将 z 设置为 10。但是,将 y 设置为 .9 是行不通的。

请帮忙。

def div():

    x = int(input('Number? '))
    y = int(input('Number? '))

    if x == 0 or y == 0:
        print('0')
    else:
        z = (x / y) * 1.0
        print(z)

这是因为你将输入转换为一个int值。字符串 '0.9' 不是文字,因此 int('0.9') 引发 ValueError 异常。

如果你想处理浮动你需要:

def div():

    x = float(input('Number? '))
    y = float(input('Number? '))

    if x == 0 or y == 0:
        print('0')
    else:
        z = (x / y) * 1.0
        print(z)