1 5 Python內建函式

2021-10-07 03:47:33 字數 2088 閱讀 5323

如果你熟悉 shell 程式設計,了解什麼是 shell 內建命令,那麼你也很容易理解什麼是 python 內建函式,它們的概念是類似的。

將使用頻繁的**段封裝起來,並給它起乙個名字,以後使用的時候只要知道名字就可以,這就是函式。函式就是一段封裝好的、可以重複使用的**,它使得我們的程式更加模組化,不需要編寫大量重複的**。

內建函式和標準庫函式是不一樣的。

python 直譯器也是乙個程式,它給使用者提供了一些常用功能,並給它們起了獨一無二的名字,這些常用功能就是內建函式。python 直譯器啟動以後,內建函式也生效了,可以直接拿來使用。

python 標準庫相當於直譯器的外部擴充套件,它並不會隨著直譯器的啟動而啟動,要想使用這些外部擴充套件,必須提前匯入。python 標準庫非常龐大,包含了很多模組,要想使用某個函式,必須提前匯入對應的模組,否則函式是無效的。

內建函式是直譯器的一部分,它隨著直譯器的啟動而生效;標準庫函式是直譯器的外部擴充套件,匯入模組以後才能生效。一般來說,內建函式的執行效率要高於標準庫函式。

python 直譯器一旦啟動,所有的內建函式都生效了;而匯入標準庫的某個模組,只是該模組下的函式生效,並不是所有的標準庫函式都生效。

內建函式的數量必須被嚴格控制,否則 python 直譯器會變得龐大和臃腫。一般來說,只有那些使用頻繁或者和語言本身繫結比較緊密的函式,才會被提公升為內建函式。

例如,在螢幕上輸出文字就是使用最頻繁的功能之一,所以 print() 是 python 的內建函式。

在 python 2.x 中,print 是乙個關鍵字;到了 python 3.x 中,print 變成了內建函式。

除了 print() 函式,python 直譯器還提供了更多內建函式,下表列出了 python 3.x 中的所有內建函式。

表 1 python 3.x內建函式

內建函式

abs()

delattr()

hash()

memoryview()

set()

all()

dict()

help()

min()

setattr()

any()

dir()

hex()

next()

slicea()

ascii()

divmod()

id()

object()

sorted()

bin()

enumerate()

input()

oct()

staticmethod()

bool()

eval()

int()

open()

str()

breakpoint()

exec()

isinstance()

ord()

sum()

bytearray()

filter()

issubclass()

pow()

super()

bytes()

float()

iter()

print()

tuple()

callable()

format()

len()

property()

type()

chr()

frozenset()

list()

range()

vars()

classmethod()

getattr()

locals()

repr()

zip()

compile()

globals()

map()

reversed()

__import__()

complex()

hasattr()

max()

round()

表 1 中各個內建函式的具體功能和用法,可通過訪問  進行檢視。

注意,不要使用內建函式的名字作為識別符號使用(例如變數名、函式名、類名、模板名、物件名等),雖然這樣做 python 直譯器不會報錯,但這會導致同名的內建函式被覆蓋,從而無法使用。

15 Python 物件導向

物件導向 oop 是一種對現實世界理解和抽象的方法,物件的含義是指在現實生活中能夠看得見摸得著的具體事物,一句比較經典的描述是一切皆物件,python 是一門物件導向的語言,物件導向程式設計簡單來說就是一種封裝 的方式。物件導向相關概念 1.類 python 中類的定義使用 class 關鍵字 cl...

15 Python物件導向

2 物件導向程式設計的主要概念 3 物件導向設計原則 本文主要介紹物件導向程式設計的主要概念以及物件導向設計原則。在進行開發的時候經常會提到物件導向,在物件導向的世界引入了物件的概念,物件既有屬性又有對應的過程,這裡的屬性通常就是指我們的資料成員,過程就是指我們的成員函式,函式的作用就是處理屬性。在...

15 python迴圈語句(else)

1.概念 迴圈可以和else配合使用,else下方縮排的 表示當迴圈執行結束之後要執行的 2.案例 i 1while i 5 print 寶寶我錯了 i 1else print 寶寶原諒我了,寶寶真好 3.else中的break和continue i 1while i 5 print 寶寶我錯了 i...