Python - 数字文字表达式
Python - Numeric Literal expressions
有人可以帮助我理解为什么 Python 会执行以下操作吗?
>>> 1,024
SyntaxError: invalid token
>>> 1,024.46
(1, 24.46)
第一个数字文字 1,024 returns 语法错误,因为 Python 中的数字文字中从未使用逗号。
然而,第二个数字文字 returns 数字 1,024.46 作为两个不同的数字,即使它是一个数字并且不会抛出错误。
我想了解 Python 认为第二个数字是什么,它与第一个有何不同?
Python 将两个类似的 comma-separated 值视为一个元组(因此有括号)。第一个是语法错误而第二个不是的原因是对于浮点数,允许以 0 开头,而对于整数则不允许。所以 (1, 024)
是一个语法错误,(1, 024.46)
不是,因为 024
不是一个有效的整数,但 024.46
是一个有效的浮点数。
有人可以帮助我理解为什么 Python 会执行以下操作吗?
>>> 1,024
SyntaxError: invalid token
>>> 1,024.46
(1, 24.46)
第一个数字文字 1,024 returns 语法错误,因为 Python 中的数字文字中从未使用逗号。
然而,第二个数字文字 returns 数字 1,024.46 作为两个不同的数字,即使它是一个数字并且不会抛出错误。
我想了解 Python 认为第二个数字是什么,它与第一个有何不同?
Python 将两个类似的 comma-separated 值视为一个元组(因此有括号)。第一个是语法错误而第二个不是的原因是对于浮点数,允许以 0 开头,而对于整数则不允许。所以 (1, 024)
是一个语法错误,(1, 024.46)
不是,因为 024
不是一个有效的整数,但 024.46
是一个有效的浮点数。