解碼 Python 中神秘的「0」前導數字
當您在 Python 2.7.3當中輸入帶有前導零的小整數時,它們會產生意想不到的結果,例如:
>>> 011 9 >>> 0100 64 >>> 027 23
這個怪癖源自於Python的方式解釋以「0」為前綴的數字。在 Python 2.x 中,這些數字被視為八進位(以 8 為基數)整數。
揭開八進制數
在八進制數字系統中,每個數字代表的冪8. 例如:
與Python 2.7.3 不同,Python 3.0 不會將前導「0」的數字辨識為八進位整數,而是引發錯誤。要在 Python 3 中表示八進位數,必須使用「0o」前綴,例如:
>>> 0o11 9 >>> 0o100 64 >>> 0o27 23Python 2.x 中的舊版支援
以上是為什麼 Python 2.x 將帶前導零的數字解釋為八進位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!