如何在Python中從文件字串建立文件?


要從文件字串建立文件,我們可以使用以下包和模組:

  • Pydoc
  • Epydoc
  • Sphinx

讓我們一一瞭解它們:

Pydoc

pydoc 模組可以從 Python 原始碼中的文件字串建立 HTML。

pydoc 模組會自動根據 Python 模組生成文件。該文件可以在控制檯上顯示為文字頁,也可以提供給 Web 瀏覽器,或儲存為 HTML 檔案。

對於模組、類、函式和方法,顯示的文件是從物件的文件字串(即 __doc__ 屬性)以及其可記錄成員的文件字串遞迴派生的。如果沒有文件字串,pydoc 會嘗試從原始檔類、函式或方法定義正上方的註釋行塊或模組頂部獲取描述(參見 inspect.getcomments())。

內建函式 help() 會在互動式直譯器中呼叫聯機幫助系統,該系統使用 pydoc 在控制檯上生成其文字文件。也可以透過在作業系統的命令提示符下執行 pydoc 作為指令碼,從 Python 直譯器外部檢視相同的文字文件。例如,執行:

pydoc sys

在 shell 提示符下將以類似於 Unix man 命令顯示的手冊頁的樣式顯示關於 sys 模組的文件。pydoc 的引數可以是函式、模組或包的名稱,也可以是模組或包中類的、方法的或函式的點分引用。

您還可以使用 pydoc 在本地機器上啟動一個 HTTP 伺服器,該伺服器將文件提供給訪問的 Web 瀏覽器。

  • pydoc -n <主機名> 將啟動伺服器,偵聽指定的主機名。預設情況下,主機名是“localhost”,但如果您希望從其他機器訪問伺服器,則可能需要更改伺服器響應的主機名。

  • pydoc -b 將啟動伺服器,並另外開啟一個 Web 瀏覽器到模組索引頁。

Epydoc

使用 epydoc 包,可以僅根據文件字串建立 API 文件。

Epydoc 是一種基於 Python 模組的文件字串生成 API 文件的工具。有關 epydoc 輸出的示例,請參閱 epydoc 本身的 API 文件 (html, pdf)。可以使用名為 epytext 的輕量級標記語言來格式化文件字串,並新增有關特定欄位的資訊,例如引數和例項變數。Epydoc 也理解用 reStructuredText、Javadoc 和純文字編寫的文件字串。

Sphinx

Sphinx 使建立智慧且美觀的文件變得容易。以下是其功能:

  • 輸出格式 - HTML(包括 Windows HTML 幫助)、LaTeX(用於可列印的 PDF 版本)、ePub、Texinfo、手冊頁、純文字。

  • 廣泛的交叉引用 - 函式、類、引用、詞彙表術語和類似資訊語義標記和自動連結。

  • 分層結構 - 易於定義文件樹,並自動連結到兄弟、父級和子級。

  • 自動索引 - 常規索引以及特定於語言的模組索引。

  • 程式碼處理 - 使用 Pygments 高亮器自動高亮顯示。

  • 擴充套件 - 程式碼片段的自動測試,透過內建擴充套件包含 Python 模組的文件字串,以及透過第三方擴充套件實現更多功能。

  • 主題 - 透過建立主題修改輸出的外觀,並重復使用許多第三方主題。

  • 貢獻的擴充套件 - 使用者貢獻的數十個擴充套件;大多數都可以從 PyPI 安裝。

更新於:2022年9月20日

607 次檢視

啟動您的職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.