替代Python文档

3 投票
3 回答
800 浏览
提问于 2025-04-18 12:11

我在需要查找东西的时候一直在看docs.python,这个网站合适吗?我之前用的是Java,感觉docs.python更像是一个教程网站,而不是文档网站。

比如说,当我在Java的API参考里查找一个类的时候,一眼就能看出它的返回类型、方法名称和参数,非常简单有效。而在docs.python里,如果我想找一个返回X的方法,就得把所有的方法描述都读一遍……他们没有一个简短的方法列表,也没有描述的情况下告诉你方法的功能,方法描述里甚至没有提到会抛出什么异常……肯定有更好的网站。

我在玩Python,觉得它的功能更简洁,技巧更多,但不能快速查找东西让我很头疼,读那些大部分没用的信息打断了我的思路。

编辑: 给我差评的人,我真的在努力使用这个语言……如果你觉得我用错了,有什么建议的话……能不能告诉我你是怎么做的,因为我在网上查了很多,像谷歌、必应、Yandex、DuckDuckGo都没找到好的建议,你们肯定不可能只用docs.python……当然我可以结合使用dir()、help()和doc.python,但这实在是太麻烦了。

编辑: 好吧,我还有很多要学的,也许等我对Python了解得更好时,就能明白这些文档为什么是这样的,我想我应该感到高兴,因为至少有文档可以参考 :P

谢谢大家的建议

3 个回答

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
[...]
4

docs.python.org 是 Python 语言和库的权威参考资料。

不过,如果你只是想查看某个模块或类里面的方法列表,可以使用 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.
2

你可以使用一种叫做“自省”的方法。以下是一些我觉得最重要的内容:

  • dir(object) 可以返回一个对象的所有方法和属性。

  • module.__doc__ 会返回这个模块的说明文档。

  • type(object) 可以告诉你这个对象的类型。

  • help(object) 也可能会很有用。

撰写回答