【发布时间】:2018-06-28 19:54:42
【问题描述】:
我无法完全理解 Python3x 中类型和值错误之间的区别。
当我尝试使用 float('string') 而不是 TypeError 时,为什么会得到 ValueError?这不应该也给出一个 TypeError,因为我正在传递一个“str”类型的变量以转换为浮点数吗?
In [169]: float('string')
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-169-f894e176bff2> in <module>()
----> 1 float('string')
ValueError: could not convert string to float: 'string'
【问题讨论】:
-
部分字符串可以转成float,例如
123。 -
字符串 (
'string') 的 值 有问题,因为它不能转换为浮点数。 -
另一个有效的例子是
float("infinity")。 -
另一个是
float("nan")
标签: python typeerror valueerror