我试图编写非常简单的代码来计算文章的折扣。下面是代码,它在代码的第三行抛出异常。例外情况是:
Traceback (most recent call last):
File "C:/Users/basam/AppData/Local/Programs/Python/Python35/discounts.py", line 3, in <module>
discount=0.1*price
TypeError: can't multiply sequence by non-int of type 'float'
代码:
^{pr2}$有人能告诉我问题出在哪里吗?在
键是
int(price)
。input
命令返回存储在变量price
中的字符串。在在第二行中,
price
被调用int(price)
转换为一个数字,但结果不会存储在任何地方。它用于比较,然后丢弃。所以当你在第三行乘法时,你试着把一个数乘以一个字符串。在更改为
discount=0.1*float(price)
正如@Silvio Mayolo所说,问题是price变量的类型是String。可以包装input()调用,将输入值强制转换为整数,这样可以使计算正常工作
或者更好——考虑到你处理的是可以有十进制值的“money”,使用“float”类型而不是“int”
^{pr2}$相关问题 更多 >
编程相关推荐