ala*_*rev 44 python eclipse string pep8 pydev
为什么pep8抱怨代码中的下一个字符串?
import re
re.compile("\d{3}")
Run Code Online (Sandbox Code Playgroud)
我收到的警告:
ID:W1401 Anomalous backslash in string: '\d'. String constant might be missing an r prefix.
Run Code Online (Sandbox Code Playgroud)
你能解释一下这个消息的含义吗?我需要在代码中更改什么才能传递警告W1401?
代码通过测试并按预期运行.此外\d{3}是一个有效的正则表达式.
fal*_*tru 66
"\d"是"\\d"因为没有转义序列d.但是代码的读者并不清楚.
但是,考虑一下\t."\t"代表制表符,同时r"\t"代表文字\和t字符.
所以当你的意思是文字时使用原始字符串,\并且d:
re.compile(r"\d{3}")
Run Code Online (Sandbox Code Playgroud)
或明确地转义反斜杠:
re.compile("\\d{3}")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
20918 次 |
| 最近记录: |