2014-07-05 18 views
3

我一直在檢查docs.python當我需要的東西,是正確的網站使用?我來自java,docs.python看起來更像是一個教程網站,而不是文檔站點。另類python文檔

例如,當我在java api參考中查找類時,一目瞭然我知道它的所有返回類型,方法名稱和參數,非常簡單,非常有效的網站。隨着docs.python我要閱讀所有的方法描述的,如果我想找到一個返回X的方法......他們沒有的一切,沒有描述的方法的短名單,和方法描述甚至不告訴你什麼異常被提出......必須有一個更好的網站。

我一直在玩蟒蛇,我喜歡它有更少的膨脹,更多的技巧,但不能快速查找的東西正在殺我的方式,閱讀大部分無用信息的整頁是interupting我的火車的思想。

編輯 Downvoters,我真的想在這裏使用這種語言,所以......如果你認爲我doingitwrong和有什麼建議......也許解釋你如何推出,因爲我GOOGLE了,猛吃, yandex'd duckduckgo'd並沒有發現任何好的建議,你不能使用docs.python ......相信我可以使用DIR()幫助()和doc.python組合,但超出了玩笑,多數民衆贊成。

編輯 好,可以學到很多東西我還是有,也許當我學習Python更好一點,我會明白爲什麼文檔是現在這個樣子,我想我應該是快樂的甚至有文檔:P

感謝輸入的人

+1

如果你發現它,確保每個人都知道它;-)我認爲php.net模型(評論/維基)可能是最好的;儘管在很大程度上,Python stdlib是有道理的 - 你很少需要重讀這些文檔。學習一次,你就完成了;-) –

+0

顯然是一個品味的問題,但是我發現使用'dir()'快速和容易。特別是如果你使用像ipython一樣體面的外殼。爲了快速檢查,我通常會打開ipython的qtconsole。不管文件如何組織,不會認爲在線查找文檔會更快。雖然我猜想,但味道很重要。 – pandita

+0

你們如何找到可能引發的異常,併爲提高陳述颳起代碼? – MarkF207

回答

2

你可以使用內省。其中最重要的(我反正):

dir(object)返回一個對象的所有方法和屬性。

module.__doc__應該返回模塊的文檔字符串

type(object)返回對象類型

help(object)可能是有用的太

+0

有沒有辦法找到返回類型,或者是否是非pythonic :P – MarkF207

+0

你可以運行'type(object())'。 'object()'返回任何東西,並把它作爲'type'的輸入來告訴你它是什麼 – pandita

+0

是的type()會快速完成沒有參數的方法的工作,我真正的牛肉是官方文檔的冗長... – MarkF207

4

docs.python.org是Python語言和庫的權威性參考。

但是,如果你只是想的一個模塊或類方法的列表,你可以使用內置的dir()help()功能:

>>> import string 

>>> dir(string) 
['Formatter', 'Template', '_TemplateMetaclass', '__builtins__', '__doc__', '__file__', 
'__name__', '__package__', '_float', '_idmap', '_idmapL', '_int', '_long', 
'_multimap', '_re', 'ascii_letters', 'ascii_lowercase', 'ascii_uppercase', 'atof', 
'atof_error', 'atoi', 'atoi_error', 'atol', 'atol_error', 'capitalize', 'capwords', 
'center', 'count', 'digits', 'expandtabs', 'find', 'hexdigits', 'index', 
'index_error', 'join', 'joinfields', 'letters', 'ljust', 'lower', 'lowercase', 
'lstrip', 'maketrans', 'octdigits', 'printable', 'punctuation', 'replace', 'rfind', 
'rindex', 'rjust', 'rsplit', 'rstrip', 'split', 'splitfields', 'strip', 'swapcase', 
'translate', 'upper', 'uppercase', 'whitespace', 'zfill'] 

>>> help(string.upper) 
Help on function upper in module string: 

upper(s) 
    upper(s) -> string 

    Return a copy of the string s converted to uppercase. 
+0

Tbh其更快速地找出返回類型和異常,所以我知道如何正確處理代碼 – MarkF207

1

當使用IPython發展,反省會變得更加容易由於標籤完成和方便的foo?簡寫呼叫help(foo)即時顯示函數/方法/對象/ ...文檔字符串。一個典型的會話可能看起來有點像:

In [1]: import pandas as pd 

In [2]: pd.Da<Tab> 
pd.DataFrame  pd.DateOffset pd.DateRange  pd.DatetimeIndex 
In [3]: pd.DataFrame? 
Type:  type 
String Form:<class 'pandas.core.frame.DataFrame'> 
File:  c:\python27\lib\site-packages\pandas\core\frame.py 
Docstring: 
Two-dimensional size-mutable, potentially heterogeneous tabular data 
[...]