gpt4 book ai didi

python-3.x - 为什么 Python 不接受以 0 开头的整数作为有效代码?

转载 作者:行者123 更新时间:2023-12-05 08:53:46 26 4
gpt4 key购买 nike

我知道您不能将变量定义为

height = 06

为什么我们做不到?是的,没有以零开头的整数,但鉴于从数学上讲,06 与 6 相同,为什么编程语言不允许我们以这种方式定义它(即使没有实际用途)而不是抛出错误?

如果以这种方式定义变量,是否有任何特定问题会导致问题?在使用或打印这样的变量时,解释器/编译器可以将其用作“6”,但为什么在我们刚刚定义时抛出错误?这只是惯例吗?

最佳答案

如果您查看 integer literals 的定义,你会看到:

Note that leading zeros in a non-zero decimal number are not allowed. This is for disambiguation with C-style octal literals, which Python used before version 3.0.

C 和 Python 2 都对十六进制数使用“0x”前缀,对八进制数使用“0”前缀。

Python 3 分别使用“0x”和“0o”。

请注意,当从字符串转换为 int 时,您可以有前导零:

In [1]: int('06')
Out[1]: 6

关于python-3.x - 为什么 Python 不接受以 0 开头的整数作为有效代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52807667/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com