我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Sphinx怎么生成python文档

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Sphinx怎么生成python文档

本篇内容主要讲解“Sphinx怎么生成python文档”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Sphinx怎么生成python文档”吧!

前言

Sphinx是一款支持多种编程语言的文档生成工具,在python项目开发过程中,可以帮助开发者根据需求生成相应的说明文档,拿今天我们就基于该开源工具进行一个入门的实践。

安装

pip3 install sphinx

环境准备

安装python,pycharm编辑器的电脑

创建相关的项目目录,如下图所示,我们可以创建document_generate_sphinx的项目文件夹,在下面分别创建doc和class="lazy" data-src文件夹,前者用来存放sphinx工具生成的相关文档和配置文件,后者用来存放自己的项目源码文件。

在class="lazy" data-src文件夹下创建demo_one.py和demo_two.py文件,并写上简单的几个类和测试代码,在doc目录下运行sphinx-quickstart,一路默认配置下来会生成如下图所示存在于doc文件夹中的文件(这其中除了要配置自己的项目名称,版本号等内容外,其他均默认或者yes即可)

Sphinx怎么生成python文档

接下来,我们可以运行sphinx-apidoc -o ../doc ../class="lazy" data-src/ 命令将源码生成rst文件到doc的文件夹下,如下图

Sphinx怎么生成python文档

Sphinx怎么生成python文档

到此,我们就可以尝试 在doc目录下 运行make html指令来生sphinx说明文档了,但是在这里发生了报错如下

Sphinx怎么生成python文档

  从报错的内容来看分为两类,第一个是在提示我们没有发现automodule,第二个是发现modules.rst文件中没有toctree。

经过实践我们得到解决第一个问题需要在conf.py文件中添加上extensions = ["sphinx.ext.autodoc"]插件即可,解决第二个问题,需要在index.rst文件中添加上modules的文件路径,如下所示

Sphinx怎么生成python文档

Sphinx怎么生成python文档

 5. 此时,我们再去运行make clean&make html指令,可以清除之前生成的文档,生成新的文档在build或者_build文件夹中,打开_build文件夹html文件夹中的index.html文件可以发现生成的文档如下图

Sphinx怎么生成python文档

 6. 在实际阅读开源库的说明文档过程中会发现,目前python的很多开源文档都是统一的蓝白交替的主题,为了让自己显得更专业,可以为其替换一下目前流行的主题,在替换主题前,需要安装一下主题库,并在conf.py文件中做一个主题配置。如下

  6.1 pip3 install sphinx_rtd_theme

  6.2 在conf.py文件中将 html_theme = "alabaster"更换如下图,再添加上html_theme_path

Sphinx怎么生成python文档

 7. 重新运行make clean&make html命令,生成的新文档说明如下

Sphinx怎么生成python文档

 8. 至此,完成了一个简单的两个程序代码的文档生成示例,但是在实际项目中,可能还设计到其他目录下文件的添加和变更,怎样把需要展示的文件展示到文档中?类如changelog的添加,其他文件的添加。

  比如,这里在doc目录下直接人为创建一个非py代码的说明文件,命名为changelog.rst,然后直接运行make clean&make html指令,得到了如下报错

Sphinx怎么生成python文档

  从报错内容的提示来看,是因为changelog文件没有被放到toctree中,所以需要在index.rst文件中添加上changelog的目录,如下图所示

Sphinx怎么生成python文档

 9. 再次运行make clean&make html指令,编译顺利成功,但是发现打开文档目录中index后,显示特别丑,个人建议可以将其删掉,原图如下

Sphinx怎么生成python文档

Sphinx怎么生成python文档

 10. 删除掉index.rst文件中红色部分,如下左图,然后再次编译生成新的文档,可以发现没有了索引模块,显得简单干净,如下右图所示。

Sphinx怎么生成python文档

Sphinx怎么生成python文档

 11. 如果在开发过程中更改了源代码需要展示的文件,需要重新运行生成rst文件的指令 sphinx-apidoc -o ../doc ../class="lazy" data-src/

  比如,为了示范,我们将原来class="lazy" data-src文件中的demo_one.py 和 demo_two.py分别更名成 animal_attack.py和dog_aonstan.py文件,并重新写了一些代码,那么就需要重新运行上述指令并删除原来的rst文件并更改modules.rst文件中的module名称,如下图

Sphinx怎么生成python文档

   再次运行make clean&make html指令,发现编译成功,文档也更新了相关模块和内容,另外会有人说,如果需要在文档中展示的函数能够链接到源码,需要怎么做,这里很简单。

文档展示函数链接源码,在conf.py文件中extensions中添加"sphinx.ext.viewcode"模块 重新生成文档如下

Sphinx怎么生成python文档

Sphinx怎么生成python文档

Sphinx怎么生成python文档

到此,相信大家对“Sphinx怎么生成python文档”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Sphinx怎么生成python文档

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Sphinx怎么生成python文档

本篇内容主要讲解“Sphinx怎么生成python文档”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Sphinx怎么生成python文档”吧!前言Sphinx是一款支持多种编程语言的文档生成工具
2023-06-29

怎么使用Sphinx给Python代码写文档

这篇文章将为大家详细讲解有关怎么使用Sphinx给Python代码写文档,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Python 代码可以在源码中包含文档。这种方式默认依靠 docstring,它以三引
2023-06-16

Golang怎么生成Excel文档

这篇文章主要介绍Golang怎么生成Excel文档,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!关于 Excelize 库Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 E
2023-06-15

php怎么生成word文档

可以使用PHP库PHPWord来生成和操作Word文档。以下是一个简单的示例:首先,你需要安装PHPWord库。可以通过Composer来安装:composer require phpoffice/phpword接下来,创建一个PHP文件并
php怎么生成word文档
2024-03-15

django怎么自动生成接口文档

Django没有内置的功能来自动生成接口文档,但是可以使用第三方工具来实现自动生成接口文档。以下是一些常用的自动生成接口文档的工具:Django Rest Swagger:这是一个为Django Rest Framework提供Swagg
2023-10-23

Python怎么批量生成含指定数据的word文档

这篇文章将为大家详细讲解有关Python怎么批量生成含指定数据的word文档,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、需求说明在平时工作当中,经常需要处理文件,特别是Word,处理Word时会遇一
2023-06-21

Vue组件文档怎么生成工具库

这篇文章主要讲解了“Vue组件文档怎么生成工具库”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Vue组件文档怎么生成工具库”吧!目录解析.vue 文件提取文档信息提取组件名称、描述、prop
2023-06-20

SpringBoot是怎么自动生成API文档的

这篇文章主要讲解了“SpringBoot是怎么自动生成API文档的”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“SpringBoot是怎么自动生成API文档的”吧!前言在做项目的时候,如果项
2023-06-20

怎么在Python中根据模板批量生成docx文档

今天就跟大家聊聊有关怎么在Python中根据模板批量生成docx文档,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。一、需求说明能够根据模板批量生成docx文档。具体而言,读取exce
2023-06-15

怎么用java快速生成接口文档

本篇内容主要讲解“怎么用java快速生成接口文档”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用java快速生成接口文档”吧!目录前言方案一,使用japidocs基本用法方案2,swagge
2023-06-20

Babel怎么实现自动生成Attribute文档

本篇内容主要讲解“Babel怎么实现自动生成Attribute文档”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Babel怎么实现自动生成Attribute文档”吧!1. 前言利用Babel自动
2023-07-04

Python自动化办公之Word文档怎么创建与生成

这篇文章主要介绍了Python自动化办公之Word文档怎么创建与生成的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python自动化办公之Word文档怎么创建与生成文章都会有所收获,下面我们一起来看看吧。保存生
2023-06-30

使用IDEA怎么快速生成注释文档

本篇文章给大家分享的是有关使用IDEA怎么快速生成注释文档,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。IDEA提供了快捷方式来生成指定的代码。首先我们要编写好代码的模板。打开
2023-06-15

ABAP文档生成方法是什么

这篇文章主要介绍“ABAP文档生成方法是什么”,在日常操作中,相信很多人在ABAP文档生成方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ABAP文档生成方法是什么”的疑惑有所帮助!接下来,请跟着小编
2023-06-04

SpringBoot怎么整合Swagger Api自动生成文档

本篇内容主要讲解“SpringBoot怎么整合Swagger Api自动生成文档”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SpringBoot怎么整合Swagger Api自动生成文档”吧!
2023-06-20

生成 MySQL Doxygen 文档内容

MySQL的源代码包含大量内部文档,这些文档是使用Doxygen编写的。此 Doxygen 内容可从 https://dev.mysql.com/doc/index-other.html 获取。此 Doxygen 内容可以从 MySQl 源
2023-10-22

怎么给ABAP类自动生成帮助文档

本篇内容主要讲解“怎么给ABAP类自动生成帮助文档”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么给ABAP类自动生成帮助文档”吧!Social media 在SP0开发的时候,建了CL_SO
2023-06-04

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录