繁体   English   中英

docs.python.org使用sphinx.ext.autodoc吗?

[英]Does docs.python.org use sphinx.ext.autodoc?

看起来sphinx.ext.autodoc已成为Python doc字符串中类似“JavaDoc”的注释的事实标准。

Sphinx用于在docs.python.org上生成文档。 但它是否从Python源.py文件(使用autodoc)读取文档字符串以显示在docs.python.org上?

文档库部分包括逐个方法的摘要,但这些摘要与文本无关。 它们是否与源代码中的注释保持同步?

换句话说,是否有一个地方可以在文档中找到完全相同的文本(格式化旁边),以及从解释器查询文档字符串?

我还没找到这样的地方。 例如,使用帮助机制查看用于打印的docstring会产生:

>>> help(print)
Help on built-in function print in module builtins:
print(...)
    print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)

    Prints the values to a stream, or to sys.stdout by default.
    Optional keyword arguments:
    file:  a file-like object (stream); defaults to the current sys.stdout.
    sep:   string inserted between values, default a space.
    end:   string appended after the last value, default a newline.
    flush: whether to forcibly flush the stream.

当我在3.6.2文档(与上面使用的版本相同)中查找打印时 ,我找到了不同的打印文档,没有任何参数参数说明:

print(* objects,sep ='',end ='\\ n',file = sys.stdout,flush = False)

将对象打印到文本流文件,以sep分隔,然后结束。 sep,end,file和flush(如果存在)必须作为关键字参数给出。

所有非关键字参数都转换为字符串,如str(),并写入流,由sep分隔,后跟end。 sep和end都必须是字符串; 它们也可以是None,这意味着使用默认值。 如果没有给出对象,print()将只写入结束。

file参数必须是带有write(string)方法的对象; 如果它不存在或None,将使用sys.stdout。 由于打印的参数转换为文本字符串,因此print()不能与二进制模式文件对象一起使用。 对于这些,请改用file.write(...)。

输出是否缓冲通常由文件确定,但如果flush关键字参数为true,则强制刷新流。

版本3.3中已更改:添加了flush关键字参数。

检查conf.py文件中的Python文档 ,没有autodoc扩展的配置。 这些文档不使用autodoc或从源代码文档字符串中读取。

文档不是从Python源代码生成的。 您可以在存储库中的Docs文件夹下看到.rst文件。

Docstrings是分开的。 文档字符串不用于生成文档,您也不会在文档中找到文档字符串。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM