当前位置: 首页 > 面试题库 >

为什么会出现TypeError:无法将序列乘以'float'类型的非整数?

呼延骏俊
2023-03-14
问题内容

我输入要获取的销售金额(按输入)乘以定义的营业税(0.08),然后打印总金额(营业税乘以销售金额)。

我碰到这个错误。有人知道什么地方可能有问题或有什么建议吗?

salesAmount = raw_input (["Insert sale amount here \n"])
['Insert sale amount here \n']20.99
>>> salesTax = 0.08
>>> totalAmount = salesAmount * salesTax

Traceback (most recent call last):
  File "<pyshell#57>", line 1, in <module>
    totalAmount = salesAmount * salesTax
TypeError: can't multiply sequence by non-int of type 'float'

问题答案:

raw_input返回一个字符串(一个字符序列)。在Python中,将字符串和浮点数相乘并没有定义的含义(而将字符串和整数相乘则具有以下含义:"AB" * 3is "ABABAB";多少是"L" * 3.14多少?请不要回复"LLL|")。您需要将字符串解析为数字值。

您可能要尝试:

salesAmount = float(raw_input("Insert sale amount here\n"))


 类似资料:
  • 问题内容: 鉴于: 我得到: 我还会收到关于第6行的“未经检查的演员表”警告。为什么?该是 不是 一个泛型类型- 它只是一个普通的。如何通过检查和强制转换为实例来正确实现? 注意:显然,此代码示例是我的实际代码的简化版本。真正的类和都大得多,是一个内部类的其实现中使用。 仅供参考:实数确实使用了通用参数。 问题答案: o不是通用类型-只是普通对象。 那不是问题。问题…和两个编译错误的根本原因…是泛

  • 问题内容: 在回答了这个问题之后,我很困惑为什么这段代码中的整数溢出而不是负数。奇怪,为什么这么精确的数字?为什么是0? 输出: 问题答案: 仅当的起始值为偶数时,才会发生这种情况。 根据JLS§15.17.1: 如果整数乘法溢出,则结果是数学乘积 的低阶位 ,以某种足够大的二进制补码格式表示。结果,如果发生溢出,则结果的符号可能与两个操作数值的数学积的符号不同。 如果我们以二进制格式而不是十进制

  • 问题内容: 我已经搜索了这个很棒的论坛并在Google周围搜索,但无法解决。 我们有两个表(相信我,我与这些表无关)。这两个表都有一个名为的列。 然而,在一个表中,数据类型就是和在另一个表中,这是。 我们从选择这里被定义为和保存该ID写入其中被定义为。 作为数据类型descrepancy的结果,我们得到错误转换数据类型来。 在不弄乱数据库的情况下,我想强制使用摆脱该错误。 有什么想法我在下面的代码

  • 问题内容: 我不明白为什么我不能使用我的变量。 码: 我收到以下错误消息: 问题答案: 在: 因此,您正在创建一个浮点数-要使用int除法运算符来解决此问题:

  • 问题内容: 从一个包含三列数据的文本文件中,我希望能够从第一列中的值等于中定义的值的所有三列中获取一个数据。然后,我想将数据切片放入一个名为(我正在使用 Python 2.7 )的新数组中 以上返回: 问题答案: 您的变量的形状可能不正确: 如果使用这种方法读取列数据,就会发生以下情况: 也许你可以简单地使用 代替。 (PS您的代码看起来像它的犹豫不决它是否还是。我认为它只是一个错字。)

  • 问题内容: 我正在大学学习基础知识,并且希望对Eclipse中的以下错误有所帮助:“对于类型ShopCLI,未定义方法getCost()”& 这是我的代码 问题答案: 方法是在订单类中定义的,而不是在类中定义的。所以你的代码: 应该改为