为什么00100在Python中等于64?

2 投票
3 回答
593 浏览
提问于 2025-04-16 13:19

为什么在下面的Python代码中,00100等于64呢?

>>> i = 00100
>>> i
64
>>> type(00100)
<type 'int'>
>>> str(00100)
'64'
>>> str("00100")
'00100'
>>> int(str("00100"))
100
>>> 

3 个回答

1

这是八进制数。http://en.wikipedia.org/wiki/Octal

在八进制中,1是01,2是02,...,7是07,8是10(没错!),9是011,等等。

2

在Python(还有其他编程语言)中,如果一个数字前面有0,它会被当作一个八进制数来理解。

9

这是一个八进制的数,因为它前面有零。

http://www.translatorscafe.com/cafe/units-converter/numbers/calculator/octal-to-decimal/

^计算器(很难简单总结)

撰写回答