◐ Shell
clean mode source ↗

Message 315445 - Python tracker

PR 6517 improves syntax error messages for invalid numerical literals.

>>> 012
  File "<stdin>", line 1
SyntaxError: leading zeros in decimal integer literals are not permitted; use an 0o prefix for octal integers
>>> 0o129
  File "<stdin>", line 1
SyntaxError: invalid digit '9' in octal literal
>>> 0o
  File "<stdin>", line 1
SyntaxError: invalid octal literal
>>> 1_2_
  File "<stdin>", line 1
SyntaxError: invalid decimal literal
>>> 0.1_2_
  File "<stdin>", line 1
SyntaxError: invalid decimal literal
>>> 12e+
  File "<stdin>", line 1
SyntaxError: invalid decimal literal
>>> 12e+1_
  File "<stdin>", line 1
SyntaxError: invalid decimal literal

"SyntaxError: invalid token" was emitted before.

No tests yet. Suggestions about error messages are welcome.