溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

查看python內(nèi)置函數(shù)源碼的方法

發(fā)布時間:2020-08-24 14:12:08 來源:億速云 閱讀:366 作者:小新 欄目:編程語言

小編給大家分享一下查看python內(nèi)置函數(shù)源碼的方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

在用Python進行各種分析的時候,我們會用到各種各樣的函數(shù),比如,我們用SQL時,經(jīng)常使用join、max等各種函數(shù),那么想看Python是否有這個函數(shù),這個時候可能大部分人會百度,那么如何不使用百度,而用Python本身來查找函數(shù),學習函數(shù)的用法呢?

查看python內(nèi)置函數(shù)源碼的方法

這里還可以使用help函數(shù):

import math
help(math)

help函數(shù)會得到一個帶有說明的函數(shù)列表,如下:

查看python內(nèi)置函數(shù)源碼的方法

如果還是對函數(shù)不是特別了解,可以到方法的文件中去看函數(shù)的定義,利用***.__file__查看位置,然后打開后綴名為.py的文件。

import random
random.__file__

結(jié)果為:這樣就可以到這個py文件中查看源碼

'D:\\Anaconda2\\envs\\py3\\lib\\random.py'

這里需要注意一下:

***.pyc的文件是編譯后的文件,打開是看不懂的,所以要看***.py文件。

在里面可以搜想看的函數(shù),具體的定義,比如說,我搜了expovariate函數(shù),下面把該方法貼出來,這樣就可以看到該方法是如何聲明的辣,這樣是不是也很方便,而且了解的更加透徹呢~

def expovariate(self, lambd):
        """Exponential distribution.
        lambd is 1.0 divided by the desired mean.  It should be
        nonzero.  (The parameter would be called "lambda", but that is
        a reserved word in Python.)  Returned values range from 0 to
        positive infinity if lambd is positive, and from negative
        infinity 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

以上是查看python內(nèi)置函數(shù)源碼的方法的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI