The new (in 0.26.0) check for W1401 ("Anomalous backslash in string") has this definition in it, to enumerate the backslash escapes that are meaningful in Python string literals:
ESCAPE_CHARACTERS = 'abfnrtvox\n\r\t\\\'\"'
This is not quite right, though. I think the mistake comes from a confusing table in the Python reference at http://docs.python.org/2/reference/lexical_analysis.html#literals .
In the escape sequence "\ooo" shown in that table, all of the "o" letters stand for octal digits- there is no "\o" escape in Python. The W1401 check should complain about any "\o" instances in non-raw strings, like it does for \d, etc.
And by the same token, "\0" IS a proper (and common) escape sequence in Python, which W1401 erroneously complains about. (See Footnote 3 after that Python reference escape sequences table; it is supported and ok for there to be only one octal digit in the escape sequence. | |
| priority | normal |
|---|---|
| type | bug |
| appeared in | <not specified> |
| done in | 0.27.0 |
| load left | 0.000 |
| closed by | #874:720a5ebaba7d |


#111138 disabling R0921 does'nt work