在 python Docstring 中写入双反斜杠
Writing double backslash in python Docstring
我正在为带有 clear_stop_character 功能的 python 包编写文档,用户可以在其中的列表中提供额外的停止字符。在我写的文档中:
"""
stoplist (list, default empty): Accepts a list of extra stop characters,
should escape special regex characters (e.g., stoplist=['\*']).
"""
用户看到停止字符前的双反斜杠很重要。但是,构建包的 help()
结果显示:
"""
stoplist (list, default empty): Accepts a list of extra stop characters,
should escape special regex characters (e.g., stoplist=['\*']).
"""
所以,这会误导用户。
顺便说一句,我没有根据前面的问题找到解决方案。
有什么想法吗?
Python 中的 \
是一个转义字符,它告诉 Python 按字面解释其后的字符。这意味着 \
告诉 Python 按字面解释第二个 \
,从而导致不显示第一个反斜杠的错误。
解决此问题的最简单方法是使用四个反斜杠:\\
。这样,Python 看到第一个反斜杠并从字面上解释第二个反斜杠,打印 \
。然后,第三个反斜杠将告诉 Python 将第四个反斜杠从字面上解释为 \
.
只需将您的代码重写为:
"""
stoplist (list, default empty): Accepts a list of extra stop characters,
should escape special regex characters (e.g., stoplist=['\\*']).
"""
我正在为带有 clear_stop_character 功能的 python 包编写文档,用户可以在其中的列表中提供额外的停止字符。在我写的文档中:
"""
stoplist (list, default empty): Accepts a list of extra stop characters,
should escape special regex characters (e.g., stoplist=['\*']).
"""
用户看到停止字符前的双反斜杠很重要。但是,构建包的 help()
结果显示:
"""
stoplist (list, default empty): Accepts a list of extra stop characters,
should escape special regex characters (e.g., stoplist=['\*']).
"""
所以,这会误导用户。
顺便说一句,我没有根据前面的问题找到解决方案。
有什么想法吗?
\
是一个转义字符,它告诉 Python 按字面解释其后的字符。这意味着 \
告诉 Python 按字面解释第二个 \
,从而导致不显示第一个反斜杠的错误。
解决此问题的最简单方法是使用四个反斜杠:\\
。这样,Python 看到第一个反斜杠并从字面上解释第二个反斜杠,打印 \
。然后,第三个反斜杠将告诉 Python 将第四个反斜杠从字面上解释为 \
.
只需将您的代码重写为:
"""
stoplist (list, default empty): Accepts a list of extra stop characters,
should escape special regex characters (e.g., stoplist=['\\*']).
"""