常用內置函數彙總:
1、abs():
取絕對值
print("abs()取絕對值:", abs(-1), abs(1))
2、all():
參數爲可迭代序列,如果序列爲空,直接返回True;如果序列不爲空,則判斷序列中的每個元素,只要有一個爲假,都返回False
print("all()序列的bool運算(全爲真才返回True):", all(['']))
3、any():
參數爲可迭代序列,如果序列爲空,直接返回False;如果序列不爲空,則判斷序列中的每個元素,只要有一個爲真,都返回True
print("any()序列的bool運算(有一個爲真就返回真):", any([1, None]))
4、bin():
十進制轉換成二進制
print("bin()十進制轉換成二進制", bin(5))
5、bool():
判斷bool值,除了'',None,0返回False,其餘都返回True
print("bool()判斷bool值:", bool(''), bool(None), bool(0))
6、bytes():
轉換成字節,需要手動添加字節編碼,注意,使用什麼格式編碼的,就用什麼方式解碼
print("bytes()轉換成字節:", bytes("你好", encoding='utf-8'))
print("bytes()轉換成字節:", bytes("你好", encoding='utf-8').decode('utf-8'))
print("bytes()轉換成字節:", bytes("你好", encoding='gbk'))
7、chr():
輸出對應的ascii表值
print("chr()輸出對應的ascii表值", chr(97))
8、dir():
查看對象中包含的方法
print("dir()查看對象中的方法:", dir(all))
9、divmod():
計算商和餘數
print("divmod()計算商和餘數:", divmod(10, 3))
10、eval():
將字符串中的數據結構提取出來;計算字符串中的數學運算
print("eval()提取字符串中的數據結構", eval("{\"name\":\"wangdoudou\"}"))
print("eval()計算字符串中的數學運算:", eval("1+2-(3*4)/5"))
11、hash():算法,計算對象的哈希值
可hash的爲不可變數據類型,不可hash的爲可變數據類型
特性:1、計算出的值與對象的數據長度無關,是一個固定的值
2、不能根據計算出的哈希值反推回去原始對象的值
3、對象不變,哈希值永遠不變
print("hash()計算對象的哈希值:", hash("wangdoudou"))
12、help():
查看函數的幫助
print("help()查看函數幫助:", help(all))
13、hex():
十進制轉換成十六進制
print("hex()十進制轉換成十六進制:", hex(12))
14、oct():
十進制轉換成八進制
print("oct()十進制轉換成八進制:", oct(12))
15、isinstance():
判斷對象是否爲某個;類型的實例
print("isinstance()判斷對象是否爲某個類型的實例", isinstance(1, int))
16、globals():
查看所有的系統和自定義的全局變量
print("globals()查看所有系統和自定義的全局變量:", globals())
17、locals():
查看當前級別的變量
print("locals()查看當前級別的變量:", locals())
18、zip():
將兩個序列一一對應起來,組成一個元組
print("zip()將兩個序列一一對應:", list(zip(('a', 'b', 'c'), (1, 2, 3))))
print("使用zip將字典的鍵值對組成一個元組查看:", list(zip(info.keys(), info.values())))
19、max():
比較可迭代類型的最大值(只能是同類型之間的比較)
l1 = [1, -10, 104, -30, 9]
print("max()取出列表中的最大值:", max(l1))
info = {18: "wangdoudou1", 90: "wangdoudou3", 21: "wangdoudou2"}
print("計算字典中的最大值:", max(list(zip(info.keys(), info.values()))))
info = [
{"name": "wangdoudou2", "age": 1000},
{"name": "wangdoudou4", "age": 10000},
{"name": "wangdoudou3", "age": 9000},
{"name": "wangdoudou1", "age": 18}
]
print(max(info, key=lambda x: x["age"]))
20、min():
比較可迭代類型的最小值(只能是同類型之間的比較)
l1 = [1, -10, 104, -30, 9]
print("min()取出列表中的最小值:", min(l1))
info = {18: "wangdoudou1", 90: "wangdoudou3", 21: "wangdoudou2"}
print("計算字典中的最小值:", min(list(zip(info.keys(), info.values()))))
info = [
{"name": "wangdoudou2", "age": 1000},
{"name": "wangdoudou4", "age": 10000},
{"name": "wangdoudou3", "age": 9000},
{"name": "wangdoudou1", "age": 18}
]
print(min(info, key=lambda x: x["age"]))
21、ord():
將ascii碼字符轉換成對應的值
print("ord()將ascii碼字符轉換成對應的值:", ord('a'))
22、pow(x,y,z):
兩個參數,計算x的y次方 x**y;三個參數,先計算x的y次方,在對z取餘 x**y%z
print("pow()計算平方:", pow(2, 3))
print("pow()計算平方後取餘:", pow(2, 3, 3))
23、ewversed():
序列反轉
print("reversed()序列反轉:", list(reversed([1, 2, 3, 4])))
24、round():
四捨五入
print("round()四捨五入:", round(3.6), round(3.2))
25、slice():
自定義切片slice(2,5)相當於2:5
tempstr = "abcdefg"
s1 = slice(2, 4)
s2 = slice(2, 5, 2)
print("slice()切片使用參數爲起始位置,終止位置,步長:", tempstr[s1], tempstr[s2], s1.start, s1.stop, s1.step)
26、sorted():
排序(只能進行同類型之間的)
info = [
{"name": "wangdoudou2", "age": 1000},
{"name": "wangdoudou4", "age": 10000},
{"name": "wangdoudou3", "age": 9000},
{"name": "wangdoudou1", "age": 18}
]
print("sorted()排序:", sorted(info, key=lambda x: x["age"]))
27、vars():
查看函數方法
print("vars()沒有參數與locals()函數的功能一樣:", vars())
print("vars()加上參數表示查看該函數下面的方法並以字典的形式展出:", vars(int))
28、__import__():
可以導入字符串類型的模塊
moudle_name = "FunctionTest"
m = __import__(moudle_name)
m.test(1, 2, 3, 4, 5, 6, 7, y="hehe", z=110)