我在运行我的项目的测试套件并打开所有警告和 Python 3.6 时得到这些:
.../jinja2/nodes.py:716: DeprecationWarning: invalid escape sequence \s
"""
.../jinja2/runtime.py:111: DeprecationWarning: invalid escape sequence \s
"""
.../jinja2/lexer.py:294: DeprecationWarning: invalid escape sequence \s
"""
.../jinja2/lexer.py:503: DeprecationWarning: invalid escape sequence \-
(c('(?:\-%s\s*|%s)%s' % (
.../jinja2/lexer.py:511: DeprecationWarning: invalid escape sequence \-
(c('\-%s\s*|%s' % (
.../jinja2/lexer.py:518: DeprecationWarning: invalid escape sequence \s
(c('(.*?)((?:\s*%s\-|%s)\s*endraw\s*(?:\-%s\s*|%s%s))' % (
它看起来像它主要\s
的(非原始)文档字符串和\-
的正则表达式。 出于某种奇怪的原因,我在使用pytest-warnings
运行 pylint 的测试套件时无法重现这一点,所以我不知道是否还有更多。
我认为这些字符串应该是r'...'
原始字符串以避免出现此类警告
FWIW,我认为-
不需要任何\
-
- 在[]
,破折号没有特殊含义。
pip3 install jinja --user --upgrade
为我解决了这个问题。
原始字符串转换 ftw! 我来这里是为了寻找我的 linting 问题的解决方案 :) 感谢您的提示!
r"awk -F\my_string '{print $1}'"
不是
"awk -F\my_string '{print $1}'"
最有用的评论
我认为这些字符串应该是
r'...'
原始字符串以避免出现此类警告