gpt4 book ai didi

python - python中以0开头的数字是什么意思?

转载 作者:IT老高 更新时间:2023-10-28 20:24:34 24 4
gpt4 key购买 nike

当我在 python 中键入前面带有 0 的小整数时,它们会给出奇怪的结果。这是为什么呢?

>>> 011
9
>>> 0100
64
>>> 027
23

我使用的是 Python 2.7.3。我已经在 Python 3.0 中对此进行了测试,显然现在这是一个错误。所以它是特定于版本的。

它们显然仍然是整数:

>>> type(027)
<type 'int'>

最佳答案

这些是以 8 为基数(八进制数)表示的数字。一些例子:

Python 2(旧格式)

注意:这些表单仅适用于 Python 2.x。

011 等于 1⋅8¹ + 1⋅8⁰ = 9,

0100 等于 1⋅8² + 0⋅8¹ + 0⋅8⁰ = 64,

027 等于 2⋅8¹ + 7⋅8⁰ = 16 + 7 = 23。

Python 3(新格式)

在 Python 3 中,必须使用 0o 而不仅仅是 0 来表示八进制常量,例如0o110o27 等。Python 2.x 版本 >= 2.6 同时支持新旧格式。

0o11 等于 1⋅8¹ + 1⋅8⁰ = 9,

0o100 等于 1⋅8² + 0⋅8¹ + 0⋅8⁰ = 64,

0o27 等于 2⋅8¹ + 7⋅8⁰ = 16 + 7 = 23。

关于python - python中以0开头的数字是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11620151/

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