Начало числа с нуля помечает его как восьмеричное в Python 2. Это было признано запутанным, удивительным и непоследовательным, так как начало с 0x помечает его как шестнадцатеричное.Поэтому в Python 3, начиная с 0, недопустимо, и вы получите восьмеричное значение, начиная с 0o.Вы также можете начать с 0b, чтобы пометить его как двоичный файл.
>>> 10
10
>>> 0x10
16
>>> 0o10
8
>>> 0b10
2
>>> 010
File "<stdin>", line 1
010
^
SyntaxError: invalid token
0x, 0o и 0b также работает в Python 2.6 и Python 2.7.