2016-06-23 6 views
0

私のコードでビット演算子と演算子(&)を使用しているときに、私はPythonシェルの奇妙な動作を観察しました。 10 and 10が10を与えるが、010 & 010は、このシリーズは、011のような前の0、012などPython strange bitwise and(&)出力

ですべての数字については、以下の8を与えながらも、07 & 07までそれがなく、08と09作品と、構文エラーになります。

python 3では、数値の前に0を使用することはできません。理解できないのは、予想される動作か、Pythonの "wats"の1つです。

+0

ありがとう!それは重複している。 –

答えて

2

先頭にゼロが入力された数値は、8進数(8進数)として解釈されます。

007 == 7 
010 == 8 
011 == 9