我在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'
这是什么意思,我该如何解决?
答案 0 :(得分:1)
错误消息表明Python正在尝试将字符列表与字符串值相乘,这没有任何意义。确实:您的输入是字符串(并且应该不加引号),因此必须先将其翻译成数字格式。
使用
gewicht_kg = float(raw_input())
和其他输入类似,它会更好。