三双引用v.s.双引号

时间:2013-07-14 21:22:19

标签: python quote docstring

编写Python文档字符串的首选方法是什么?

""""

在书Dive Into Python中,作者提供了以下示例:

def buildConnectionString(params):
    """Build a connection string from a dictionary of parameters.

    Returns string."""

在另一个chapter中,作者提供了另一个例子:

def stripnulls(data):
    "strip whitespace and nulls"
    return data.replace("\00", "").strip()

两种语法都有效。对我来说唯一的区别是"""允许我们编写多行文档。

除此之外有什么不同吗?

3 个答案:

答案 0 :(得分:31)

来自PEP8 Style Guide

  • PEP 257描述了良好的文档字符串约定。请注意最多 重要的是,结束多行文档字符串的“”“应该在 单独排列,例如:

    """Return a foobang
    
    Optional plotz says to frobnicate the bizbaz first.
    """
    
  • 对于一个班轮文档字符串,可以保持关闭“”“ 同一行。

PEP 257建议使用三引号,即使是单行文档字符串:

  • 即使字符串适合一行,也会使用三引号。这个 以后可以轻松扩展它。

请注意,即使Python标准库本身也不一致遵循这些建议。例如,

答案 1 :(得分:6)

他们都是字符串,所以没有区别。首选样式是三重双引号(PEP 257):

  

为了保持一致性,请始终在文档字符串周围使用"""triple double quotes"""

     

如果您在文档字符串中使用任何反斜杠,请使用r"""raw triple double quotes"""。对于Unicode文档字符串,请使用u"""Unicode triple-quoted strings"""

答案 2 :(得分:0)

不,不是真的。如果您要写入文件,使用三引号可能是理想的,因为您不必使用“\ n”来排队。只需确保您开头和结尾的引号是相同的类型(双引号或三引号)。如果您还有其他问题,请提供可靠的资源:

http://docs.python.org/release/1.5.1p1/tut/strings.html