2

我知道三引号字符串被用作文档字符串,但是真的需要有两个字符串文字吗?

当识别单线和多线有用时,是否有任何用例。

在 Clojure 中,我们有 1 个字符串文字,是多行的,我们将其用作文档字符串。那么为什么python有区别呢?

4

1 回答 1

2

必须明确创建多行字符串文字的优势可能最好用一个示例来说明:

with open("filename.ext) as f:
    for line in f:
        print(line.upper())

当然,任何体面的语法高亮编辑器都会捕捉到这一点,但是:

  1. 您并不总是使用语法高亮编辑器
  2. Python 无法控制您使用的编辑

Python 的两个设计原则是

  • 错误永远不应该默默地过去,并且
  • 显式优于隐式。

在文档字符串之外,Python 中很少使用多行字符串,因此与您想要多行字符串但忘记通过三引号明确说明的情况相比,上面的示例更有可能发生(有时每个人都输入错误) .

它类似于 Python 对重要空格的使用,因为强制执行良好、一致的缩进实践意味着比在大括号分隔的语言中更容易发现错误。

于 2013-08-17T23:42:35.510 回答