Python Sphinx使用实例及问题解决


Posted in Python onJanuary 17, 2020

这篇文章主要介绍了Python Sphinx使用实例及问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

描述

使用 pip 安装sphinx后,按照教程建立了一个新的py文件,如下

# run.py
def run(name):
  """
  this is how we run
  :param name name of people who runs
  """
  print(name, 'is running')

随后新建一个目录,使用 sphinx-quickstart 新建了sphinx环境,此时目录结构如下:

- doc
  - Makefile
 - build/
 - make.bat
 - source/
- run.py

此时进入 source目录,在conf.py 中添加文件路径,如下:

import os
import sys
sys.path.insert(0, os.path.abspath('../..'))

然后在 doc 下执行下面命令:

make html
or
sphinx-build -b html ./doc/source ./doc/build

发现两个命令都可以正常生成文档的模版,但并没有生成注释;即有生成的html,但没有代码的注释/API文档

尝试解决

开始以往是版本不一致,就重新建了virtualenv,还是不行;

使用了一个docker镜像,重试,结果是同样的错误

尝试看非官方的教程,发现还需要更改 source 下的 index.rst;

例如我们的代码文件是 run.py ,需要把他加到 index.rst中,如下(run就是模块名称):

API
===
.. automodule:: run
  :members:

再次执行,发现还有错,只不过提示不一样了:提示

Unknown directive type “automodule” or “autoclass”

谷歌之,发现还要改一个配置的地方;位于 conf.py 里,增加一个扩展……如下:

extensions = [
    'sphinx.ext.autodoc'
]

此处参考了 https://stackoverflow.com/questions/13516404/sphinx-error-unknown-directive-type-automodule-or-autoclass

再次尝试,终于成功了…

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Gnumeric下使用Python脚本操作表格的教程
Apr 14 Python
Python fileinput模块使用实例
Jun 03 Python
python中__call__内置函数用法实例
Jun 04 Python
python安装PIL模块时Unable to find vcvarsall.bat错误的解决方法
Sep 19 Python
新手如何快速入门Python(菜鸟必看篇)
Jun 10 Python
python 寻找优化使成本函数最小的最优解的方法
Dec 28 Python
python3利用Axes3D库画3D模型图
Mar 25 Python
Python3与fastdfs分布式文件系统如何实现交互
Jun 23 Python
Python 高效编程技巧分享
Sep 10 Python
Python实现EM算法实例代码
Oct 04 Python
python Yaml、Json、Dict之间的转化
Oct 19 Python
Python实现8种常用抽样方法
Jun 27 Python
通过实例了解Python str()和repr()的区别
Jan 17 #Python
python无序链表删除重复项的方法
Jan 17 #Python
Python实现投影法分割图像示例(一)
Jan 17 #Python
np.dot()函数的用法详解
Jan 17 #Python
python使用numpy实现直方图反向投影示例
Jan 17 #Python
对python中 math模块下 atan 和 atan2的区别详解
Jan 17 #Python
python 计算方位角实例(根据两点的坐标计算)
Jan 17 #Python
You might like
浅谈PHP中关于foreach使用引用变量的坑
2016/11/14 PHP
PHP实现判断数组是一维、二维或几维的方法
2017/02/06 PHP
Zend Framework基于Command命令行建立ZF项目的方法
2017/02/18 PHP
Laravel中七个非常有用但很少人知道的Carbon方法
2017/09/21 PHP
Prototype PeriodicalExecuter对象 学习
2009/07/19 Javascript
mailto的使用技巧分享
2012/12/21 Javascript
javascript-简单的计算器实现步骤分解(附图)
2013/05/30 Javascript
extjs render 用法介绍
2013/09/11 Javascript
JS实现黑客帝国文字下落效果
2015/09/01 Javascript
javascript数组克隆简单实现方法
2015/12/16 Javascript
bootstrap switch开关组件使用方法详解
2017/08/22 Javascript
利用angular、react和vue实现相同的面试题组件
2018/02/19 Javascript
js实现左右两侧浮动广告
2018/07/09 Javascript
layui 实现自动选择radio单选框(checked)的方法
2019/09/03 Javascript
[07:03]显微镜下的DOTA2第九期——430圣堂刺客杀戮秀
2014/06/20 DOTA
[07:12]2014DOTA2西雅图国际邀请赛 黑马Liquid专题采访
2014/07/12 DOTA
Python写的英文字符大小写转换代码示例
2015/03/06 Python
理解python正则表达式
2016/01/15 Python
利用Python将时间或时间间隔转为ISO 8601格式方法示例
2017/09/05 Python
python的re正则表达式实例代码
2018/01/24 Python
Python中偏函数用法示例
2018/06/07 Python
Python数据结构与算法(几种排序)小结
2019/06/22 Python
详解pandas使用drop_duplicates去除DataFrame重复项参数
2019/08/01 Python
详解python中的数据类型和控制流
2019/08/08 Python
HTML5 与 XHTML2
2008/10/17 HTML / CSS
购买原创艺术品:Zatista
2019/11/09 全球购物
车间班组长的职责
2013/12/13 职场文书
生产助理岗位职责
2014/06/18 职场文书
2014年教师节演讲稿
2014/09/03 职场文书
转学证明范本
2015/06/19 职场文书
创业计划书之物流运送
2019/09/17 职场文书
python文件名批量重命名脚本实例代码
2021/04/22 Python
MySQL 时间类型的选择
2021/06/05 MySQL
图解排序算法之希尔排序Java实现
2021/06/26 Java/Android
Python 匹配文本并在其上一行追加文本
2022/05/11 Python
Python日志模块logging用法
2022/06/05 Python