4

Pythonで型キャスト中にエラーが発生しました。

int(01)
int(02)
int(03)
int(04)
int(05)
int(06)
int(07)

何よりもうまく動作します。

しかし、怒鳴るのと同じことをすると-:

int(08)

int(09)

エラーが発生しています。

SyntaxError: invalid token

この型キャストは、int から int への変換には正しくありません。

しかし、知りたいのは、01から07で機能する場合、なぜ08と09でのみ機能しないのですか??

4

1 に答える 1

11

0 で始まる数値は 8 進数データと見なされます。8 進数は 7 を超える数を持つことはできません。

これを修正するには、データを文字列に変換し、このようにベースを明示的に渡すことができます

print int("09", 10)

出力

9
于 2013-11-13T04:43:22.560 に答える