在学习和使用python时,我们可以通过查看在线的python文档来获取需要的信息。但是在离线情况下我们如何获取我们需要的信息呢?其实很容易,我们都知道python是一种自文档化语言,大多数函数和模块都包含简短的解释,你无需求助于图书和网站就可以搞明白如何使用它们。
四大帮助函数
下面是四种基本的python内置函数,它们可以帮助我们获取python内置函数和模块的用法和信息。
- dir() function
- help() function
- type() function
- __doc__ function
| 函数 | 说明 |
|---|---|
| dir() | 列出模块中的函数 |
| help() | 打印对象的相关信息 |
| type() | 返回对象的类型 |
| __doc__ | 返回对象或模块的文档字符串 |
Note:本文以python3为例,python2用法基本相同。
dir([object])
不给参数时, dir() 就罗列出当前已定义的所有名字。如果使用参数,就会返回该对象所有有效的函数、变量等。下面是几个简单的例子:
1 | dir() |
在上面的例子中,导入struct模块后,如果不加任何参数的话,dir()返回的是当前域内已定义的所有名字,即['__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'struct']。使用struct参数后,dir()列举出struct类的属性。
1 | class Shape(object): |
如果一个对象中有一个名为__dir__()的方法,那么dir([object])必须返回__dir__()列出的属性列表。
1 | x=32 |
dir()的参数还可以是具体的变量,返回变量类型相关属性。
help([object])
help()函数是主要用于交互。如果不给参数,交互环境就会启动help帮助系统。在该系统下只要你输入相应对象就可获得该对象的相应信息。如果参数是一个字符串,那么这个字符串就会被看作模块、函数、类、方法等的名字,然后就会输出相应的帮助信息。如果参数是任何其他的对象,那么就会产生该对象的帮助页面。
1 | help() |
1 | help(str) |
使用str作为参数就会显示有关str类的相关帮助文档。
type(object)
顾名思义,type()函数返回对象的类型。
1 | x = 55 |
__doc__
另一个实用的技巧是打印函数或者模块等的文档字符串。
1 | import math |
大多数python内置函数都有简短的文档字符串,这些字符串通常位于模块或者函数的开始部分。
1 | print(bin.__doc__) |
对比
下面通过一个简单的例子对比四个函数。
1 | import os |
参考资料
The linux juggernaut, http://www.linuxnix.com/python-builtin-helpdir-help-type-and-___doc_-functions/#%22Here%20is%20my%20list%20of%20online%20resources%22
Python 3.5.2 documentation, https://docs.python.org/3/
- Python编程入门, [加]Toby Donaldson著, 人民邮电出版社