在python中,我可以使用help(<object>)
獲得任何對象的基本文檔。但爲了能夠搜索的文檔,我必須去上網。如果我在某個無法訪問互聯網的地方,這並沒有什麼幫助。搜索python文檔脫機?
在R中,有一個方便的雙重問號特徵(??<topic>
),它允許我搜索所有已安裝庫的文檔,以查找其名稱或文檔字符串中包含<topic>
的任何功能。有沒有類似的蟒蛇?也許即使只是加載對象?
在python中,我可以使用help(<object>)
獲得任何對象的基本文檔。但爲了能夠搜索的文檔,我必須去上網。如果我在某個無法訪問互聯網的地方,這並沒有什麼幫助。搜索python文檔脫機?
在R中,有一個方便的雙重問號特徵(??<topic>
),它允許我搜索所有已安裝庫的文檔,以查找其名稱或文檔字符串中包含<topic>
的任何功能。有沒有類似的蟒蛇?也許即使只是加載對象?
查看文件夾中的python文件夾:Doc
。這個文件夾有從python.org下載的python文檔的整個下載文檔。我知道這是一個非常晚的答案,但它帶來了一個簡單的解決方案。
您應該嘗試ipython。
object_name? will print all sorts of details about any object, including docstrings, function definition lines (for call arguments) and constructor details for classes.
魔術命令%PDOC,%PDEF,%的PSource和%PFILE將分別打印文檔字符串,函數定義行,完整的源代碼和任何對象的完整文件(當它們可以被找到)。如果automagic開啓(默認情況下),則不需要顯式鍵入'%'。
對不起,但這與問題完全無關。我知道如何閱讀對象的文檔,並且我已經使用ipython。但是,這些都不允許我**搜索所有可用模塊或所有加載對象的文檔。 – naught101
Windows Idle - 從shell窗口或編輯窗口中獲取F1獲取所有文檔的窗口幫助文件。我認爲它比在線版本更好 - 找到內容更容易。
雖然內置在您的計算機中的文檔肯定比help()(比如windows idle)更好,但對於一些更常見的主題,另一種選擇只是將一些聯機文檔保存到您的計算機上。對於您需要使用很多並希望脫機訪問的模塊,您可以下載官方在線python文檔的文本文件版本,這是獲取文檔的最佳位置。 (文件>保存頁面爲>選擇.txt文件格式)
只是爲了增加對Python文檔的離線訪問(主要是核心)的另一種選擇:
我沒有在時刻可以訪問的Linux計算機,但在Windows,您可以導航到your_python_dist_folder/doc
找一些幫助文件。例如,特別是python275.chm
。
如果有你的Linux機器上沒有doc文件夾,您可以下載文件here和谷歌的一個Linux CHM觀衆:
https://www.google.com/search?q=linux+chm+viewer
::注:
一些發行版還包括文檔對於那裏的其他包...可能值得一檢查。除此之外,help(module)
通常會返回良好的信息。
編輯:
你可以得到的東西,可能是通過使用pydoc
更接近你想要的東西一點點。例如。您算算模塊中尋找一些關於sin
:
import math
import pydoc
[i for i in dir(math) if 'sin' in pydoc.getdoc(getattr(math,i))]
這將返回其文檔字符串包括sin
方法:
['acos', 'acosh', 'asin', 'asinh', 'cos', 'cosh', 'isinf', 'sin', 'sinh']
,而您則可以運行help()
功能
是pydoc附帶python,可以做搜索,但只能在可用模塊的簡介行中。引用pydoc --help
:
pydoc -k Search for a keyword in the synopsis lines of all available modules.
請注意,在pydoc中,您可以使用「/」執行搜索。
這聽起來像是我正在尋找的東西,除了當我使用它時,它失敗了:'AttributeError:'NoneType'對象沒有屬性'load_module'' 。我想也許我有一個模塊存在問題,但我找不到它,大概這樣一個工具應該處理這樣的問題。此外,它看起來每次都會加載所有模塊,這需要一段時間:如果它緩存了結果(可能它確實存在,我只是沒有看到它,因爲它失敗),那將是非常棒的。 – naught101
確實,pydoc通過導入模塊來工作。如果你的python路徑中有一個不能被導入,它將會失敗。 –
這可能不是可用的問題,提出和回答的時間,但現在python.org使所有在網上提供的文檔作爲可導航的HTML文件的存檔和檢索脫機:https://docs.python.org/2/download.html
(該鏈接指向最新版本的2.x的文檔,但您可以從該頁面選擇3.x和舊的2.x版本)
不幸的是,這只是核心文檔,沒有第三方庫。 – naught101
這在評論中已經提到:Zeal 與Dash類似,但是對於Windows/Linux。它使用與Dash相同的來源。它使用Qt構建,並且可以在多個發行版的倉庫中使用,而Ubuntu則有一個PPA。下載它here。
Zeal is a simple offline API documentation browser inspired by Dash (OS X app), available for Linux and Windows.
- Quickly search documentation using Alt+Space (or customised) hotkey to display Zeal from any place in your workspace.
- Search in multiple sets of documentation at once.
- Don't be dependent on your internet connection.
- Integrate Zeal with Emacs, Sublime Text, or Vim. See Usage » Editor plugins for details.
它是開源(GPL),開發發生在GitHub。 Zeal使用與在線文檔相同的樣式表/ HTML,所以一切都應該看起來很熟悉。
瀏覽器內的替代品是devdocs.io。即使您處於離線狀態,您也可以訪問該網站,前提是您已將其標記爲本地離線存儲。您需要啓用Python 2文檔,然後將其標記爲離線存儲here。但是,作爲在線Python文檔的長期用戶,我發現DevDocs使用的自定義樣式表有點分散注意力。
什麼平臺/操作系統? – wwii
@wii:我在linux上,但如果可能的話,跨平臺的答案會更可取。 – naught101
請注意,http://stackoverflow.com/questions/723017指向http://docs.python.org/3/download.html這當然是有用的,但只包括核心python文檔。我感興趣的是搜索python core *和*所有已安裝模塊的文檔(或只是導入的文檔)。 – naught101