python使用MkDocs自動(dòng)生成文檔的操作方法
前言
python代碼注釋風(fēng)格有很多,比較主流的有 reStructuredText風(fēng)格、numpy風(fēng)格、Google風(fēng)格。
自動(dòng)生成文檔的工具也有很多,常見的有:
- Pydocs python環(huán)境自帶,支持MarkDown,但功能比較簡單;
- Sphinx 非常流行,默認(rèn)支持reStructuredText風(fēng)格注釋,若要支持MarkDown需要擴(kuò)展插件支持;
- MkDocs 優(yōu)勢是能夠很好的支持MarkDown格式來組織文檔,支持Google風(fēng)格注釋;
對于熟悉MarkDown語法的人來說,推薦使用MkDocs,使用起來很方便。
使用MkDocs
環(huán)境
- python3.9
- 安裝依賴
mkdocs==1.6.0 mkdocstrings==0.25.1 mkdocstrings-python==1.10.3 mkdocs-autorefs==1.0.1 mkdocs-material==9.5.24 mkdocs-same-dir==0.1.3
使用介紹
記得提前安裝相關(guān)依賴。
項(xiàng)目結(jié)構(gòu)
截取部分展示:
├── pykit_tools # 源碼目錄 │ ├── __init__.py ├── docs │ ├── CHANGELOG-1.x.md │ ├── CONTRIBUTING.md │ └── Reference.md ├── .readthedocs.yaml ├── mkdocs.yml ├── README.md ├── requirements_docs.txt
配置文件
mkdocs.yml
MkDocs主配置文件
site_name: pykit-tools repo_url: https://github.com/SkylerHu/pykit-tools docs_dir: . # 配置主題 theme: name: readthedocs # name: material language: zh # 配置文檔菜單 nav: - 首頁: README.md - 使用(Usage): docs/Reference.md - Release Notes: docs/CHANGELOG-1.x.md - 貢獻(xiàn)者指南: docs/CONTRIBUTING.md # 插件配置 plugins: - search # 內(nèi)置插件,在標(biāo)題中添加了一個(gè)搜索欄,允許用戶搜索您的文檔 - same-dir # 插件mkdocs-same-dir - autorefs - mkdocstrings: default_handler: python handlers: python: # 配置解析代碼注釋的路徑 paths: [pykit_tools] options: heading_level: 3 # 使用了三級(jí)菜單,在docs/Reference.md文檔中會(huì)有體現(xiàn) show_root_heading: true show_symbol_type_heading: true show_source: false selection: docstring_style: google
注釋生成文檔的配置
配置文件中 options
配置詳見 mkdocstrings globallocal-options
示例配置docs/Reference.md
(截取部分) , 其中:::
是特定格式,配置類或者函數(shù)的python模塊路徑:
# 使用(Usage) ## 裝飾器 ::: decorators.common options: # 會(huì)覆蓋全局配置 members: - handle_exception - time_record ::: decorators.cache options: members: - method_deco_cache - singleton_refresh_regular
運(yùn)行與構(gòu)建
執(zhí)行 mkdocs serve 后可通過http://127.0.0.1:8000/訪問;
執(zhí)行 mkdocs build --clean 可以構(gòu)建生成網(wǎng)站site目錄,可以將site添加到.gitignore文件中;
site目錄中的html、js等文件可用于自行部署成文檔服務(wù)網(wǎng)站。
部署
免費(fèi)開源的部署,一般有兩個(gè)選擇:
- Github Pages
- 發(fā)布到GitHub Pages的說明;
- 限制:每個(gè)用戶只能免費(fèi)新建一個(gè)按照自己賬號(hào)名稱命名的pages;
- readthedocs網(wǎng)站
- 支持
Sphinx
和MkDocs
兩種方式的部署; - 相關(guān)配置說明;
- 對開源項(xiàng)目文檔免費(fèi)使用;
- 使用該種方式托管文檔,必須使用
readthedocs
的主題;
- 支持
本文使用了readthedocs
網(wǎng)站托管,網(wǎng)站可以使用Github賬號(hào)登錄,即可同步github項(xiàng)目信息,便捷導(dǎo)入生成文檔。
部署需要依賴配置文件.readthedocs.yaml
, 內(nèi)容示例如下:
version: 2 # 構(gòu)建文檔需要的環(huán)境 build: os: ubuntu-22.04 tools: python: "3.9" # 文檔工具相關(guān)配置 mkdocs: configuration: mkdocs.yml # 安裝依賴 python: install: - requirements: requirements_docs.txt # 自己維護(hù)在項(xiàng)目中的依賴文件
具體導(dǎo)入步驟根據(jù)同步的GitHub項(xiàng)目列表,參考指引提示即可完成;
到此這篇關(guān)于python使用MkDocs自動(dòng)生成文檔的操作方法的文章就介紹到這了,更多相關(guān)python MkDocs生成文檔內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Pycharm安裝報(bào)錯(cuò):Cannot detect a launch confi
本文主要介紹了Pycharm安裝報(bào)錯(cuò):Cannot detect a launch configuration解決辦法,具有一定的參考價(jià)值,感興趣的可以了解一下2025-03-03Django配置kafka消息隊(duì)列的實(shí)現(xiàn)
本文主要介紹了Django配置kafka消息隊(duì)列的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-05-05python實(shí)現(xiàn)批量轉(zhuǎn)換圖片為黑白
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)批量轉(zhuǎn)換圖片為黑白,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-06-06python導(dǎo)入坐標(biāo)點(diǎn)的具體操作
在本篇文章里小編給大家分享了關(guān)于python導(dǎo)入坐標(biāo)點(diǎn)的具體操作步驟和圖解,有需要的朋友們跟著學(xué)習(xí)下。2019-05-05