Python 文档字符串

2025 年 8 月 6 日 | 阅读 4 分钟

Python 文档字符串(docstrings)指的是 Python 的文档字符串,它们本质上是字符串字面量。它们专门提供了一种将文档与 Python 函数、模块、类和方法相结合的合适方式。文档字符串很可能与程序一起被执行,但它不像其他注释那样被解释器忽略。

示例

输出

I am the first, therefore treated as a docstring
Hello, John!

如何声明文档字符串?

文档字符串通过三重单引号('''...''')和三重双引号("""...""")来声明。

如何访问文档字符串?

文档字符串可以通过使用对象函数名的 `__doc__` 方法,然后是点(.)运算符,最后是 `__doc__` 方法来访问。另一种访问文档字符串的方式是通过 `help()` 函数 `help(function_name)`。

文档字符串有什么用?

Python 中,文档字符串用于在执行期间对 Python 函数、类和模块进行文档化。它对代码、代码的实际作用以及特定行的作用进行了简要说明。当我们执行程序时,解释器会忽略注释,但当我们使用文档字符串时,它不会被忽略;它也会被解释并在终端上显示。

文档字符串有什么优点?

以下是一些重要的优点:

  • 它提供了 Python 函数、模块或类的高级描述,说明了它们的作用。
  • 它提高了代码的可读性。
  • 由于提供了简要说明,它使代码易于理解。
  • 它还提高了代码的可维护性。

我们可以在函数或类中使用多个文档字符串吗?

当我们在类、模块或函数中使用多个(一个以上)文档字符串时,第一个会被视为文档字符串并在执行时打印在终端上,而其他则不被视为文档字符串,只是被 Python 解释器忽略,就像 Python 注释一样。它们也不会产生任何错误,但也不会像文档字符串那样工作。

我们可以编写多个文档字符串,但只有第一个被视为文档字符串并在执行时打印;其他则被视为注释。

示例

输出

I am the first, therefore treated as a docstring
Hello, John!
age : 22

说明

在上面的示例中,正如您所看到的,第一个文档字符串打印在终端上,而另一个则没有;它只是被解释器忽略了。

文档字符串应放在哪里?

声明文档字符串时,必须将其写在函数、类和模块的顶部。文档字符串必须是函数、模块或类内的第一个语句。如果您声明了其他语句然后声明文档字符串,它将不会被视为文档字符串,并且如果您打印文档字符串,它将返回 `None`,并且不被视为文档字符串。

示例

输出

This class describe me

Constructs all the necessary attributes for the object
My name is John
 My age is 28
 I done M.tech
None

说明

在上面的示例中,所有文档字符串都声明在类和函数的顶部,因此它们作为文档字符串打印在终端上。正如您所说,在 `my_det` 函数中声明在 `print` 语句之后的文档字符串返回 `None`,因为它不是函数的第一个语句。

区分 Python 注释和文档字符串。

Python注释Python 文档字符串
1. 单行注释由 # 符号实现。
2. 多行注释由三重单引号('''...''')或三重双引号("""...""")实现。
3. Python 解释器会完全忽略它。

 

1. 它通过三重单引号('''...''')和三重双引号("""...""")实现,无论是单行还是多行。
2. Python 解释器不会忽略它;它也会在终端上打印。
3. 使用 `__doc__` 方法打印。

关于 Python 文档字符串的重要关键事实

  • 语法:文档字符串 enclosed enclosed enclosed enclosed either in triple single quotes ('''...''') or triple double quotes ("""...""").
  • 位置:必须将文档字符串放在类、模块或函数的顶部。
  • 访问:您可以通过 `__doc__` 方法和 `help()` 函数访问文档字符串。
  • 目的:它提供了关于代码作用、返回值、参数和实参的详细描述。

常见问题解答

1. 什么是 Python 文档字符串?

Python 文档字符串指的是 Python 的文档字符串,它们本质上是字符串字面量。它们专门提供了一种将文档与 Python 函数、模块、类和方法相结合的合适方式。

2. 您可以将文档字符串放在代码的任何位置吗?

不可以,您不能将文档字符串放在任何位置。声明文档字符串时,必须将其写在函数、类和模块的顶部。文档字符串必须是函数、模块、类或类内的第一个语句。

3. 如何声明文档字符串?

在 Python 中,文档字符串通过三重单引号('''...''')和三重双引号("""...""")来声明。

4. 如何访问文档字符串?

文档字符串可以通过两种方式访问:

  • 通过 `__doc__` 方法。
  • 通过 `help()` 函数。

5. 注释和文档字符串是相同的吗?

不,注释和文档字符串不相同。Python 解释器会完全忽略注释,而文档字符串不会被 Python 解释器忽略;它通过方法在终端上打印。