Python3解釋器中內置了69個常用函式,屬于底層的函式,它們到處可用,是新手學習的重要內容,
當然,有些函式對大家來說比較熟悉,比如abs(), max(), sum()... 也有一些比較陌生,比如locals(), all(), compile(), getattr()... 今天按照類別扼要總結,
1 型別相關
69個內置函式中,與型別相關的指,把入參包裝為某種型別,這樣的內置函式包括:
bool() #d布爾型
int() #d整形
str() #d字符型
tuple() #d元包型
dict() #d字典型
list() #d串列型
zip() #可迭代物件聚合,(,)
complex() #d復數型
float() #d浮點型
bytes() #d位元組型陣列
bytearray() #d字數陣列
range() #d不可更改的序列
object() #d無屬性的根類
set() # 集合型別
frozenset() # 凍結集合型別,不允許修改
slice() # 回傳一個slice物件,其中start, stop, step等都是只讀的
比如bool(x),將入參x封裝為Boolean型別,回傳值為True或False
'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ群:778463939
尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書!
'''
bool(10)
>>> True
bool(0)
>>> False
bool(\'false\')
>>> True
bool(0.0)
>>> False
2 數理統計相關
有的內置函式可以完成簡單的數理統計作業,這樣的內置函式包括:
abs() #d絕對值
min() #d最小
max() #d最大
sum() #d求和
pow() #d求次冪
all() #d所有元素為true則為true
any() #d至少一個元素為true則為true
divmod() #d(商,余數)
round() #四舍五入
len() #引數元素個數
any()函式代碼等價于以下5行代碼:
'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ群:778463939
尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書!
'''
def any(iterable):
for element in iterable:
if element:
return True
return False
divmod函式:
divmod(10,8)
>>> (1,2)
3 進制轉換
有些內置函式可以幫助我們輕松實作進制轉換,比如:
chr() #unicode編碼
ord() #chr()反操作
bin() #轉化為ob開頭的二進制字符
hex() #轉化為ox開頭的十六進制字符
ascii() #可列印表示物件,類似于 repr()
oct() # 轉化為0o開頭的八進制字符
4 面向物件相關
Python提供與物件屬性相關的操作函式,它們為滿足Python屬性的動態調整提供了可能,
'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ群:778463939
尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書!
'''
setattr(object, name, value) #為物件設定屬性
delattr(object, name) # 洗掉命名的屬性
getattr(object,name) #獲取屬性的取值,如果物件無此屬性,會拋例外
getattr(object,name, 123) #即便無此屬性,也不會拋例外,會回傳123
hasattr(object,name) # 判斷name屬性是否屬于object
isinstance(object, classinfo) #判斷object是classinfo的實體嗎
issubclass(class, classinfo) # 判斷class是否為classinfo的子類
super() #呼叫父類, 方法
property() #特性相關,@property標記為屬性
type() #回傳實體的型別
vars() # 回傳物件的資訊等
classmethod() # 轉化方法為類方法
staticmethod() #方法是靜態方法
比如,
setattr(x,\'footbar\',12) #等價于 x.footbar=12
issubclass(list,object)
>>> True
issubclass(object,list)
>>> False
5 迭代器相關
next, reversed, iter(), enumerate()這些都是與迭代相關的函式,比如以下,就是回傳一個逆向迭代器:
'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ群:778463939
尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書!
'''
rev = reversed([1,-2,4,0])
for i in rev:
print(i)
>>> 0
4
-2
1
iter函式使用例子
iter(\'abc\')
>>> <str_iterator at 0x8b9fba8>
for i in iter(\'abc\'):
print(i)
>>> a
b
c
6 map函式
map函式的原型為:map(function, iterable, ...) ,回傳一個迭代器,在每一個可迭代物件的元素上應用function.
map應用舉例:
'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ群:778463939
尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書!
'''
def f(x):
reutn x**2
mymap = map(f, [1,2,3]) # 回傳一個迭代器
for i in mymap:
print(i)
>>> 1
4
9
7 排序相關
sorted回傳一個排序好的串列,比如:
li = [1,-2,4,0]
sorted(li)
>>> [-2,0,1,4]
8 其他
compile函式與原始碼編譯相關;
memoryview函式與記憶體視圖相關;
help查看幫助;
dir查看物件的方法和屬性;
更多見下表:
hash() # 回傳物件的哈希碼
id() #回傳一個物件的標識
input() #與標準輸出相關
breakpoint() #除錯相關
exec() #動態執行Python代碼
callable() #判斷物件是否可呼叫
format() #物件格式化
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/135407.html
標籤:Python
