python的內建函式和模組

2021-09-17 20:43:19 字數 2512 閱讀 4386

內建函式

python也有很多內建函式來供我們使用,可以用help()來檢視內建函式的用法

絕對值 abs() 最大值max() 最小值min()

計算序列長度可以用len()

divmod(x,y) 得到x除以y的商及餘數

pow(x,y,z) 表達的是求x的y次方再對z取餘,z可有可無,沒有z的話就是求x的y次方

callable() 用來測試某物件是否可被呼叫(一般用來測試函式)

isinstance()可以用來測試某個物件的型別是否為某個型別

issubclass()用來檢查乙個類是否屬於另外乙個類的子類

str.capitalize() 使得字串str的首字母大寫

str.replace() str.replace(「a」,」b」,c),將str中的a換成b,當字串中有多個a時,可以選擇控制到底替換掉多少a,替換多少c就是多少

str.split() 切割 第乙個引數為切割的位置,第二個為切割的次數

模組

為了編寫可維護的**,我們把很多函式分組,分別放到不同的檔案裡,這樣,每個檔案包含的**就相對較少,很多程式語言都採用這種組織**的方式。在python中,乙個.py檔案就稱之為乙個模組(module)。

使用模組最大的好處就是大大提高了**的可維護性其次,編寫**不必從零開始。當乙個模組編寫完畢,就可以被其他地方引用。我們在編寫程式的時候,也經常引用其他模組,包括python內建的模組和來自第三方的模組。

為了避免模組名衝突,python又引入了按目錄來組織模組的方法,稱為包(package)。

舉個例子,乙個abc.py的檔案就是乙個名字叫abc的模組,乙個xyz.py的檔案就是乙個名字叫xyz的模組。現在,假設我們的abc和xyz這兩個模組名字與其他模組衝突了,於是我們可以通過包來組織模組,避免衝突。方法是選擇乙個頂層包名,比如mycompany,按照如下目錄存放:

mycompany

├─init.py

├─ abc.py

└─ xyz.py

引入了包以後,只要頂層的包名不與別人衝突,那所有模組都不會與別人衝突。現在,abc.py模組的名字就變成了mycompany.abc,類似的,xyz.py的模組名變成了mycompany.xyz。

每乙個包目錄下面都會有乙個__init__.py的檔案,這個檔案是必須存在的,否則,python就把這個目錄當成普通目錄,而不是乙個包。init.py可以是空檔案,也可以有python**,因為__init__.py本身就是乙個模組,而它的模組名就是mycompany。

類似的,可以有多級目錄,組成多級層次的包結構。比如如下的目錄結構:

mycompany

├─ web

│ ├─init.py

│ ├─ utils.py

│ └─ www.py

├─init.py

├─ abc.py

└─ xyz.py

檔案www.py的模組名就是mycompany.web.www,兩個檔案utils.py的模組名分別是mycompany.utils和mycompany.web.utils。

需要注意的是當我們自己建立模組時不能和python自帶的模組名重複

系統自帶了sys模組,使用模組的第一步就是匯入

例如import sys

對於模組暫時了解到這兒了,嘖嘖嘖,加油加油.

爬蟲爬蟲------

未完待續-

python 常用的內建函式和內建模組

1 type 返回物件或者變數的資料型別 print type 嘻嘻 class str a 3print type a class int 2 abs 返回數字的絕對值 print abs 10 10 3 max 返回一組資料當中最大的值 print max 1,3,2 3 4 min 返回一組資...

python函式和模組 python內建函式與模組

一 函式中如果return是多個引數,只用乙個引數接收時,是元組 也可以用多個引數接收,那就是解包 def func a 1 b 2 c 3 return a,b,c q,w,e func print func type func q,w,e 輸出 1,2,3 1 2 3 二 函式自己呼叫自己,遞迴...

Python模組的內建函式

python提供了乙個內聯模組buildin。內聯模組定義了一些開發中經常使用的函式。利用這些函式可以實現資料型別的轉換 資料的計算 序列的處理等功能。下面將介紹內聯模組中常用的函式。filter 可以對某個序列做過濾處理,判斷自定義函式的引數返回的結果是否為真來過濾,並一次性返回處理結果。filt...