【发布时间】:2019-08-12 06:02:45
【问题描述】:
weight_lbs = input ('weight (lbs): ')
weight_kg = int(weight_lbs * 0.45)
print(weight_kg)
错误:预期类型“int”改为“float”。
请多多指教。
【问题讨论】:
-
您需要将标题更改为例如错误消息。并尝试在 ``` 之间包装代码
标签: python python-3.x
weight_lbs = input ('weight (lbs): ')
weight_kg = int(weight_lbs * 0.45)
print(weight_kg)
错误:预期类型“int”改为“float”。
请多多指教。
【问题讨论】:
标签: python python-3.x
我尝试了您的代码,但没有遇到同样的问题,尽管我看到了不同的问题。
这段代码:
weight_kg = int(weight_lbs * 0.5)
应该是:
weight_kg = int(weight_lbs) * 0.5
否则,你会得到这个错误:
TypeError: 不能将序列乘以“float”类型的非整数
原因是您的代码将字符串乘以数字。您需要先将input()返回的字符串转换为数字,然后进行乘法运算。
【讨论】:
您输入的weight_lbs 是一个字符串,而不是一个数字。将其转换为int 或float
weight_kg = int( float(weight_lbs) * 0.5)
(另外,一磅不是半公斤。为什么不更准确一点?你有电脑!)
【讨论】:
你可以试试这个:
weight_lbs = input('weight (lbs): ')
weight_kg = int(float(weight_lbs) * 0.5)
print(weight_kg)
【讨论】:
它对我有用:
weight_lbs = input('weight (lbs): ')
# I just converted the type of "weight_lbs" to Float and removed the last parenthesis
weight_kg = float(weight_lbs) * 0.5
print(weight_kg)
【讨论】: