Python2とPython3の違いに8進数の表現があります。私は8進数よりも16進数を使うことが多く,8進数はなじみがないのですが,いざ使おうとしたときに,どう表現すればいいかは知っておかなくてはいけない項目だと思ってます。
・Python2:’0’を先頭につけます。
・Python3:’0o’を先頭につけます。
実際Python2.7.10で試したところこんな風になりました。Python2は,上記どちらの記述でもOKみたいです。
>>> 0100 64 >>> 0o100 64
一方,Python3は’0’で8進数を書くとエラーになります。書式が統一されたということでしょうか。
>>> 0100
File "<stdin>", line 1
0100
^
SyntaxError: invalid token
>>> 0o100
64
