内容简介:当编写比较大的库时,如果代码具有良好的注释规范,可以使用良好的代码中可能超过 50% 都属于注释。不鼓励写很多不用的注释,但是清晰的注释使得文档的阅读,代码的 理解都会方便很多。个人更加倾向于
当编写比较大的库时,如果代码具有良好的注释规范,可以使用 sphinx
来生成文档。本文主要介绍生成文档 的步骤,以及编写代码中注释的添加方式。本文主要参考 Reference ,更加详细的使用说明可以参考它。 本文主要简单介绍下基本的规范,以及生成文档的方式。
注释
良好的代码中可能超过 50% 都属于注释。不鼓励写很多不用的注释,但是清晰的注释使得文档的阅读,代码的 理解都会方便很多。个人更加倾向于 Google 的风格
模块注释
.. module:: module_name .. moduleauthor:: some one <some_one@some.com> # Other documents about `module_name`
类的注释
>>>
用于增加代码块,但是注意其前后需要增加空行。
class StarCraft(object): StarCraft is a fantastic class. Bla. Bla. >>> sc = StartCraft() >>> sc.start(1, 'north') def __init__(self): super(StarCraft, self).__init__()
函数的注释
def start(engine, direction): start a starcraft Args: engine(int): engine number direction(str, int): direction to fly Returns: boolean: indicate whether starting operation is successful. Raises: BadEngineError: engine number is not supported pass
生成文档
如果我们是按照上述方式来给模块、类以及函数增加注释的,那么就很容易使用。按照 参考 中的 an_example_pypi_project
的内容来组织代码,其目录结构如下。注意 usefule_2
的模块代码不能直接 复制 useful_1
的,自己随便增加点内容即可,格式按照上一部分来定。
an_example_pypi_project ├── __init__.py ├── useful_1.py └── useful_2.py
安装 sphinx
:
pip install sphinx
我们创建任意一个目录,然后 cd
进入那个目录。本文在工程同级目录创建了一个 docs
目录。
├── an_example_pypi_project └── docs
初始化
然后进入 docs
目录,先执行初始化的命令
sphinx-quickstart
有几个选项需要打开:
- Separate source and build directories (y/n) [n]: y
- autodoc: automatically insert docstrings from modules (y/n) [n]: y
此时的目录结构如下:
├── an_example_pypi_project ├── docs │ ├── build │ └── source │ ├── _static │ └── _templates
生成 API 文档
第一个选项是指定输出的文件夹,第二个选项是 python 包的路径。
sphinx-apidoc -o source ../an_example_pypi_project
目录结构如下:
├── Makefile ├── build └── source ├── _static ├── _templates ├── an_example_pypi_project.rst ├── conf.py ├── index.rst └── modules.rst
这个时候有个比较重要的操作, source/conf.py
中有部分代码被注释,需要增加回来
import os import sys sys.insert(0, os.path.abspath('../..') # sys.insert(0, os.path.abspath('path-to-an_example_pypi_project') # 不包括:`an_example_pypi_project`
这里的路径是需要执行你模块的所在的目录。
生成 HTML 文件
进入 source
目录, ./html
是输出的文件夹。
sphinx-build -b html . ./html
如果之前生成过 Makefile
,在那个 Makefile
所在的目录,执行 make html
,会生成 build/html/
目录。
展示网页
到这里,HTML 已经生成,可以展示给用户。使用 Python
自带的模块就可以提供服务了。
进入生成的 HTML 文件夹:
python -m SimpleHTTPServer 8080
在浏览器中输入 localhost:8080
就可以看到之前的代码注释啦~
This work is licensed under a CC A-S 4.0 International License
.
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 利用代码生成工具生成基于ABP框架的代码
- 实战:一键生成前后端代码,Mybatis-Plus代码生成器让我舒服了
- 代码生成模式:未来我们会怎样写代码?
- JWCloud 专业版 v1.1.0 发布,新增代码生成器、一键生成模块及前端 UI 代码
- Java 代码生成
- Java代码生成器
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。