这个错误意味着什么以及如何解决它?

时间:2016-03-27 15:19:53

标签: python

我在Python 3.5.1中创建了一个小bmi计算器,但奇怪的是它没有用。在Python 2.7中,它工作正常,但它并没有在这里工作。我的代码是:

print ('Geef uw gewicht in kg: ')
gewicht_kg = input()
print ('Geef uw lengte in meters: ')
lengte_meters = input()
bmi = gewicht_kg / (lengte_meters * lengte_meters) 

字符串是用荷兰语编写的,但这并不重要。如果我运行程序,输入确实有效(所以我可以输入我想要的任何内容),但是当它想要进行计算时,会出现以下错误:

can't multiply sequence by non-int of type 'str'

这是什么意思,我该如何解决?

1 个答案:

答案 0 :(得分:1)

错误消息表明Python正在尝试将字符列表与字符串值相乘,这没有任何意义。确实:您的输入是字符串(并且应该不加引号),因此必须先将其翻译成数字格式。

使用

gewicht_kg = float(raw_input())

和其他输入类似,它会更好。