有沒有人爲什麼python處理下面的這種方式。python不接受09但接受07
>>> a = 099
File "<stdin>", line 1
a = 099
^
SyntaxError: invalid token
>>> a = 088
File "<stdin>", line 1
a = 088
^
SyntaxError: invalid token
>>> a = 0559
File "<stdin>", line 1
a = 0559
^
SyntaxError: invalid token
>>> a = 077
>>>
似乎不接受從0開始,並用8或9前面的數字如果是其他數目,但是並不拋出任何錯誤。這是爲什麼?
'099'被解釋爲八進制數字,但9不是有效的八進制數字 – myaut
另請參閱:http://stackoverflow.com/questions/43071916/why-does-000-evaluate-to-0-in-python -3 –