在用Python进行各种分析的时候,我们会用到各种各样的函数,比如,我们用SQL时,经常使用join、max等各种函数,那么想看Python是否有这个函数,这个时候可能大部分人会百度,那么如何不使用百度,而用Python本身来查找函数,学习函数的用法呢?下面,小白就总结一下自己一些经历~
比如,我们在用math模块,但是不知道这个模块下是否有自己常用的函数,那么如何做呢?
方法一
import math dir(math)
首先,我们导入这个模块,使用dir函数,就可以看到,这个模块下都有哪些函数。
['__doc__','__loader__','__name__','__package__','__spec__','acos','acosh','asin','asinh','atan','atan2','atanh','ceil','copysign','cos','cosh','degrees','e','erf','erfc','exp','expm1','fabs','factorial','floor','fmod','frexp','fsum','gamma','gcd','hypot','inf','isclose','isfinite','isinf','isnan','ldexp','lgamma','log','log10','log1p','log2','modf','nan','pi','pow','radians','sin','sinh','sqrt','tan','tanh','tau','trunc']
这种方法是得到一个函数列表,当然,这里还可以使用help函数:
import math help(math)
如果还是对函数不是特别了解,可以到方法的文件中去看函数的定义,利用***.__file__查看位置,然后打开后缀名为.py的文件。
import random random.__file__
结果为:这样就可以到这个py文件中查看源码
'D:\\Anaconda2\\envs\\py3\\lib\\random.py'
这里需要注意一下:
***.pyc的文件是编译后的文件,打开是看不懂的,所以要看***.py文件。
在里面可以搜想看的函数,具体的定义,比如说,搜了expovariate函数,下面把该方法贴出来,这样就可以看到该方法是如何声明的辣,这样是不是也很方便,而且了解的更加透彻呢~
def expovariate(self, lambd):"""Exponential distribution.lambd is 1.0 divided by the desired mean. It should benonzero. (The parameter would be called "lambda", but that isa reserved word in Python.) Returned values range from 0 topositive infinity if lambd is positive, and from negativeinfinity to 0 if lambd is negative."""# lambd: rate lambd = 1/mean# ('lambda' is a Python reserved word)# we use 1-random() instead of random() to preclude the# possibility of taking the log of zero.return -_log(1.0 - self.random())/lambd