在所有可能性中都是一个愚蠢的问题,但我想知道为什么python不能从实际上是浮点数的字符串中构造一个整数。作为浮点数的字符串的Python int()
>>> int(1.0)
1
>>> int(float('1.0'))
1
但
>>> int('1.0')
Traceback (most recent call last):
File "<pyshell#17>", line 1, in <module>
int('1.0')
ValueError: invalid literal for int() with base 10: '1.0'
任何人都可以解释,为什么它不能在一个步骤做什么?
你确定这是相关的吗?你引用了Python语法的规则,这些规则并不完全对应'int'函数接受的参数。 – Kos 2013-02-28 10:00:35
@Kos我引用了一个整数字面量。 'int'接受代表**整数字面值的数字或字符串/ unicode对象** – dmg 2013-02-28 10:04:36
谢谢,我读过,这确实是文档所说的 – Kos 2013-02-28 11:20:06