Skip to main content
 首页 » 编程设计

python之不可订购的类型 : int() str()

2025年05月04日42over140

我收到错误“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)  

请您参考如下方法:

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

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

将结果赋值回end:

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

您在 float() 调用中犯了同样的错误,但在这里它不会导致任何错误。如果 numbertotal 必须是 float ,就使用浮点字面量:

total = 0.0 
number = 0.0 

但是当使用 / 运算符时,total 是 float 还是 int 并不重要。

你还需要转换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()转换不同类型的对象;例如将字符串转换为整数,或将整数转换为 float ,或将 float 转换为整数。