object.__doc__
除了在源代码中的文档本身前面添加一个“r”之外,有没有办法获取原始字符串?
我里面有乳胶代码,'\r's、'\f's 等正在产生问题。
没有像“原始字符串”这样的 Python 类型——有原始字符串文字,它们只是一种语法方法(在众多方法中),用于指定字符串类型的常量(即文字)。所以“得到”一些“作为原始字符串”的东西是没有意义的。您可以将文档字符串编写为原始字符串文字(即,带有前缀r
- 这正是表示原始字符串文字的含义,即向 Python 编译器标识此类常量的特定语法),或者将其中的任何反斜杠加倍(另一种选择指定常量字符串(包括反斜杠字符)的方法),但这与以一种或另一种方式“获取”它们无关。
不,您必须添加 r。如果您不添加 r,那么无论您做什么,都无法确保取回原始字符串。
如果您不喜欢原始字符串,另一种选择是使用额外的反斜杠来转义字符串中的反斜杠。
原始字符串和其他字符串之间的区别只是源代码文字语法的问题。一旦解析,就没有“原始”字符串对象。结果repr(object.__doc__)
总是这样,您可以将结果复制并粘贴到 python 源脚本中并获取原始字符串。
考虑:
>>> def foo():
... 'foo\nbar'
... pass
...
>>> foo.__doc__
'foo\nbar'
>>> print foo.__doc__
foo
bar
>>>