不可分类型:int()< STR()

时间:2015-03-20 09:03:46

标签: python python-3.x

我收到错误'Unorderable Types:int()< str()'我不知道为什么。

end = input('enter total numbers:')
int(end)
total = 0
float(total)
number = 0
float(number)

while number < end:
    add = input('enter number to add:')
    total = total + add
    number = number + 1

print (total / end) 

1 个答案:

答案 0 :(得分:5)

int(end) 返回新的整数,但你忽略了它:

end = input('enter total numbers:')
int(end)

将结果分配回end

end = input('enter total numbers:')
end = int(end)

你在float()电话中犯了同样的错误,但在这里它不会导致任何错误。如果numbertotal必须是浮点数,请使用浮点文字:

total = 0.0
number = 0.0

但是在使用/运算符时,如果total是浮点数或整数,则无关紧要。

您还需要转换add

add = input('enter number to add:')
add = int(add)

您可以将int()来电与input()来电相结合:

end = int(input('enter total numbers:'))

add = int(input('enter number to add:'))

在任何情况下,float()int()都不是类型声明; Python没有类似C或Java这样的语言的类型声明。变量是无类型的;您可以在endtotalnumber中放置任何内容,Python也不会眨眼睛。

相反,您使用int()float()转换不同类型的对象;比如转换为整数的字符串,或浮点数的整数,或整数的浮点数。