Python 之内置函数和匿名函数
內(nèi)置函數(shù)
截止到python3.6.2,python一共為我們提供了68個內(nèi)置函數(shù)。它們就是python提供可以直接拿來使用的所有函數(shù)
| abs() | dict() | help() | min() | setattr() |
| all() | dir() | hex() | next() | slice() |
| any() | divmod() | id() | object() | sorted() |
| ascii() | enumerate() | input() | oct() | staticmethod() |
| bin() | eval() | int() | open() | str() |
| bool() | 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() | ? |
| delattr() | hash() | memoryview() | set() | ? |
上面就是內(nèi)置函數(shù)的表,這個表的順序是按照首字母的排列順序來的,你會發(fā)現(xiàn)都混亂的堆在一起。比如,oct和bin和hex都是做進(jìn)制換算的,但是卻被寫在了三個地方。。。這樣非常不利于大家歸納和學(xué)習(xí)。我把這些函數(shù)分成了6大類
作用域相關(guān)
基于字典的形式獲取局部變量和全局變量
globals()? ? ? ? ?# 獲取全局變量的字典
locals()? ?? ? ? ? # 獲取執(zhí)行本方法所在命名空間內(nèi)的局部變量的字典
迭代器/生成器相關(guān)
range()?創(chuàng)建一個整數(shù)列表,一般用在 for 循環(huán)中。
# 函數(shù)語法 range(start, stop[, step])start: 計(jì)數(shù)從 start 開始。默認(rèn)是從 0 開始。例如range(5)等價(jià)于range(0, 5);stop: 計(jì)數(shù)到 stop 結(jié)束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]沒有5step: 步長,默認(rèn)為1。例如:range(0, 5) 等價(jià)于 range(0, 5, 1)# 實(shí)例 range(10) # 從 0 開始到 10,[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] range(1, 11) # 從 1 開始到 11,[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] range(0, 30, 5) # 步長為 5,[0, 5, 10, 15, 20, 25] range(0, -10, -1) # 負(fù)數(shù),[0, -1, -2, -3, -4, -5, -6, -7, -8, -9] range(0) # [] range(1, 0) # []其他
字符串類型代碼的執(zhí)行
eval()? ?#?將字符串類型的代碼執(zhí)行并返回結(jié)果,或者將字符串轉(zhuǎn)化為元組等
print(eval('1+2+3+4')) # 10exec()? ?# 將自字符串類型的代碼執(zhí)行,無返回值
print(exec("1+2+3+4")) # None exec("print('hello,world')") # hello,worldcode = ''' print(123) a = 20 print(a) ''' a = 10 exec(code,{'print':print},) # 123 # 20 print(a) # 10compile(source,filename,model)? ?#?將字符串類型的代碼編譯。代碼對象能夠通過exec語句來執(zhí)行或者eval()進(jìn)行求值。
參數(shù)說明:
? ? ? ? source:字符串或者AST(Abstract Syntax Trees)對象。即需要動態(tài)執(zhí)行的代碼段。
? ? ? ? filename:代碼文件名稱,如果不是從文件讀取代碼則傳遞一些可辨認(rèn)的值。當(dāng)傳入了source參數(shù)時,filename參數(shù)傳入空字符即可。
? ? ? ? model:指定編譯代碼的種類,可以指定為 ‘exec’,’eval’,’single’。當(dāng)source中包含流程語句時,model應(yīng)指定為‘exec’;當(dāng)source中只包含一個簡單的求值表達(dá)式,model應(yīng)指定為‘eval’;當(dāng)source中包含了交互式命令語句,model應(yīng)指定為’single’。
輸入輸出相關(guān):
input()? ??輸入
s = input("請輸入內(nèi)容") # 輸入的內(nèi)容賦值給s變量 print(s) # 輸入什么打印什么,數(shù)據(jù)類型是strprint()? ?輸出
def print(self, *args, sep=' ', end='\n', file=None): """print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)file: 默認(rèn)是輸出到屏幕,如果設(shè)置為文件句柄,輸出到文件sep: 打印多個值之間的分隔符,默認(rèn)為空格end: 每一次打印的結(jié)尾,默認(rèn)為換行符flush: 立即把內(nèi)容輸出到流文件,不作緩存""" f = open('tmp_file','w') print(123,456,sep=',',file = f,flush=True)# 用 % 表示完成度 import time for i in range(0,101,2): time.sleep(0.1)char_num = i//2 # 打印多少個'*'per_str = '\r%s%% : %s\n' % (i, '*' * char_num) if i == 100 else '\r%s%% : %s'%(i,'*'*char_num)print(per_str,end='', flush=True) # \r 可以把光標(biāo)移動到行首但不換行數(shù)據(jù)類型相關(guān):
type(o)? ? ? # 返回變量o的數(shù)據(jù)類型
內(nèi)存相關(guān):
id(o)?? ? ? ? # o是參數(shù),返回變量的內(nèi)存地址
hash(o)???
# o是參數(shù),返回一個可hash變量的哈希值,不可hash的變量被hash之后會報(bào)錯。TypeError: unhashable type: ‘list’
#?hash函數(shù)會根據(jù)一個內(nèi)部的算法對當(dāng)前可hash變量進(jìn)行處理,返回一個int數(shù)字。
# 每一次執(zhí)行程序,內(nèi)容相同的變量hash值在這一次執(zhí)行過程中不會發(fā)生改變。
文件操作相關(guān)
open()? ? # 打開一個文件,返回一個文件操作符(文件句柄),操作文件的模式有r,w,a,r+,w+,a+ 共6種,每一種方式都可以用二進(jìn)制的形式操作(rb,wb,ab,rb+,wb+,ab+),可以用encoding指定編碼.
模塊操作相關(guān)
import? ?# 導(dǎo)入一個模塊
os = __import__('os') # impore os 效果相同幫助方法
在控制臺執(zhí)行help()進(jìn)入幫助模式。可以隨意輸入變量或者變量的類型。輸入q退出。或者直接執(zhí)行help(o),o是參數(shù),查看和變量o有關(guān)的操作。。。
調(diào)用相關(guān)
callable(o)? ? ? # o是參數(shù),看這個變量是不是可調(diào)用。如果o是一個函數(shù)名,就會返回True
def func():pass print(callable(func)) # 參數(shù)是函數(shù)名,可調(diào)用,返回True print(callable(123)) # 參數(shù)是數(shù)字,不可調(diào)用,返回False查看參數(shù)所屬類型的所有內(nèi)置方法
dir()? ? ? ? ? ?# 默認(rèn)查看全局空間內(nèi)的屬性,也接受一個參數(shù),查看這個參數(shù)內(nèi)的方法或變量
print(dir(list)) # 查看列表的內(nèi)置方法 print(dir(int)) # 查看整數(shù)的內(nèi)置方法基礎(chǔ)類型相關(guān)
和數(shù)字相關(guān)
數(shù)據(jù)類型相關(guān):
bool()?? ? ? ?# 用于將給定參數(shù)轉(zhuǎn)換為布爾類型,如果沒有參數(shù),返回 False,bool 是 int 的子類。
bool()? ? ? ? ?#?False bool(0)? ? ? ? #?False bool(1)? ? ? ? #?True bool(2)? ? ? ? #?True issubclass(bool, int) # bool 是 int 子類 Trueint(x, base=10)?? ? ?# 將一個字符串或數(shù)字轉(zhuǎn)換為整型。(x-字符串或數(shù)字,base-進(jìn)制數(shù),默認(rèn)十進(jìn)制。)返回整型數(shù)據(jù)。
int()? ? ? ? ? ? ?# 不傳入?yún)?shù)時,得到結(jié)果0 int(3)? ? ? ? ? ? # 3 int(3.6) # 3 int('12',16)? ? ? # 如果是帶參數(shù)base的話,12要以字符串的形式進(jìn)行輸入,12 為 16進(jìn)制 18 int('0xa',16) # 10float(x)? ? ? ? ? ? ?# 函數(shù)用于將整數(shù)和字符串轉(zhuǎn)換成浮點(diǎn)數(shù),x — 整數(shù)或字符串,返回浮點(diǎn)數(shù)。
float(1) # 1.0? float(112) # 112.0? float(-123.6) # -123.6? float('123') # 字符串 123.0complex([real[,?imag]])? ?# 函數(shù)用于創(chuàng)建一個值為 real + imag * j 的復(fù)數(shù)或者轉(zhuǎn)化一個字符串或數(shù)為復(fù)數(shù)。如果第一個參數(shù)為字符串,則不需要指定第二個參數(shù)
real — int, long, float或字符串;
imag — int, long, float;
進(jìn)制轉(zhuǎn)換:
bin(x)? ? # (x-int 或者 long int 數(shù)字)將一個整數(shù) int 或者長整數(shù) long int 轉(zhuǎn)化為二進(jìn)制表示,返回值為字符串
bin(10) # '0b1010' bin(20) # '0b10100'oct(x)??? ? # (x-整數(shù))將一個整數(shù)轉(zhuǎn)換成8進(jìn)制字符串。
oct(10) # '012' oct(20) # '024'hex()??? ? ?# (x-10進(jìn)制整數(shù))將10進(jìn)制整數(shù)轉(zhuǎn)換成16進(jìn)制,以字符串形式表示
hen(255) # '0xff'' hen(-42) # '-0x2a'數(shù)學(xué)運(yùn)算:
round(a,n)? # 對a保留n位小數(shù)
round(2.355, 2) # 2.35abs(x)?? ? ? ? ? ?# 返回?cái)?shù)字x的絕對值。
abs(-45) # 45divmod(a, b)?# 把除數(shù)和余數(shù)運(yùn)算結(jié)果結(jié)合起來,返回一個包含商和余數(shù)的元組(a//b, a%b)。
divmod(7,2) # (3,1) divmod(8,2) # (4,0)min(iterable,key=func)??# 返回給定參數(shù)的最小值,iterable可以為序列和可迭代對象,key跟要使用的函數(shù)
max(iterable,key=func)??# 返回給定參數(shù)的最大值,iterable可以為序列和可迭代對象,key跟要使用的函數(shù)
sum(iterable[, start])? ? ? # 對可迭代對象進(jìn)行求和計(jì)算,必須為可迭代對象
iterable — 可迭代對象,如:列表、元組、集合。
start — 指定相加的參數(shù),如果沒有設(shè)置這個值,默認(rèn)為0
pow(x,y,[,z])?? ? ? # 返回 xy(x的y次方)的值,如果有z,則返回xy(x的y次方)%z
import math # 導(dǎo)入 math 模塊 print("math.pow(100, 2)") # 10000.0和數(shù)據(jù)結(jié)構(gòu)相關(guān)
列表和元組相關(guān)的
list(tup)??? ? ?# (tup要轉(zhuǎn)化為列表的元組) 用于將元組轉(zhuǎn)換為列表
tuple(list)? ? # (list要轉(zhuǎn)化為元組的列表) 用于將元組轉(zhuǎn)換為列表
字符串相關(guān)的
bytearry,memoryview,ord,chr,ascii暫不介紹
str(x)? ? ? ? ? #?將對象x轉(zhuǎn)化為字符串
bytes(s,encoding=’utf-8′)?# 返回一個新的 bytes 對象
repr()??? ? ? ? ?# 將對象轉(zhuǎn)化為供解釋器讀取的形式。不會去除引號
s = 'RUNOOB' print(repr(s)) # "'RUNOOB'"format()??? ? ?# 格式化輸出,函數(shù)功能將一個數(shù)值進(jìn)行格式化顯示。?如果參數(shù)format_spec未提供,則和調(diào)用str(value)效果相同,轉(zhuǎn)換成字符串格式化。
format(3.1415936) # '3.1415936' str(3.1415926) # '3.1415926'對于不同的類型,參數(shù)format_spec可提供的值都不一樣
# 字符串可以提供的參數(shù),指定對齊方式,<是左對齊, >是右對齊,^是居中對齊 print(format('test', '<20')) # test print(format('test', '>20')) # test print(format('test', '^20')) # test # 整形數(shù)值可以提供的參數(shù)有 'b' 'c' 'd' 'o' 'x' 'X' 'n' None format(3,'b') # 轉(zhuǎn)換成二進(jìn)制 '11' format(97,'c') # 轉(zhuǎn)換unicode成字符 'a' format(11,'d') # 轉(zhuǎn)換成10進(jìn)制 '11' format(11,'o') # 轉(zhuǎn)換成8進(jìn)制 '13' format(11,'x') # 轉(zhuǎn)換成16進(jìn)制 小寫字母表示 'b' format(11,'X') # 轉(zhuǎn)換成16進(jìn)制 大寫字母表示 'B' format(11,'n') # 和d一樣 '11' format(11) # 默認(rèn)和d一樣 '11' # 浮點(diǎn)數(shù)可以提供的參數(shù)有 'e' 'E' 'f' 'F' 'g' 'G' 'n' '%' None format(314159267,'e') # 科學(xué)計(jì)數(shù)法,默認(rèn)保留6位小數(shù) '3.141593e+08' format(314159267,'0.2e') # 科學(xué)計(jì)數(shù)法,指定保留2位小數(shù) '3.14e+08' format(314159267,'0.2E') # 科學(xué)計(jì)數(shù)法,指定保留2位小數(shù),采用大寫E表示 '3.14E+08' format(314159267,'f') # 小數(shù)點(diǎn)計(jì)數(shù)法,默認(rèn)保留6位小數(shù) '314159267.000000' format(3.14159267000,'f') # 小數(shù)點(diǎn)計(jì)數(shù)法,默認(rèn)保留6位小數(shù) '3.141593' format(3.14159267000,'0.8f') # 小數(shù)點(diǎn)計(jì)數(shù)法,指定保留8位小數(shù) '3.14159267' format(3.14159267000,'0.10f')# 小數(shù)點(diǎn)計(jì)數(shù)法,指定保留10位小數(shù) '3.1415926700' format(3.14e+1000000,'F') # 小數(shù)點(diǎn)計(jì)數(shù)法,無窮大轉(zhuǎn)換成大小字母 'INF'# g的格式化比較特殊,假設(shè)p為格式中指定的保留小數(shù)位數(shù),先嘗試采用科學(xué)計(jì)數(shù)法格式化,得到冪指數(shù)exp,如果-4<=exp<p,則采用小數(shù)計(jì)數(shù)法,并保留p-1-exp位小數(shù),否則按小數(shù)計(jì)數(shù)法計(jì)數(shù),并按p-1保留小數(shù)位數(shù) >>> format(0.00003141566,'.1g') #p=1,exp=-5 ==》 -4<=exp<p不成立,按科學(xué)計(jì)數(shù)法計(jì)數(shù),保留0位小數(shù)點(diǎn) '3e-05' >>> format(0.00003141566,'.2g') #p=1,exp=-5 ==》 -4<=exp<p不成立,按科學(xué)計(jì)數(shù)法計(jì)數(shù),保留1位小數(shù)點(diǎn) '3.1e-05' >>> format(0.00003141566,'.3g') #p=1,exp=-5 ==》 -4<=exp<p不成立,按科學(xué)計(jì)數(shù)法計(jì)數(shù),保留2位小數(shù)點(diǎn) '3.14e-05' >>> format(0.00003141566,'.3G') #p=1,exp=-5 ==》 -4<=exp<p不成立,按科學(xué)計(jì)數(shù)法計(jì)數(shù),保留0位小數(shù)點(diǎn),E使用大寫 '3.14E-05' >>> format(3.1415926777,'.1g') #p=1,exp=0 ==》 -4<=exp<p成立,按小數(shù)計(jì)數(shù)法計(jì)數(shù),保留0位小數(shù)點(diǎn) '3' >>> format(3.1415926777,'.2g') #p=1,exp=0 ==》 -4<=exp<p成立,按小數(shù)計(jì)數(shù)法計(jì)數(shù),保留1位小數(shù)點(diǎn) '3.1' >>> format(3.1415926777,'.3g') #p=1,exp=0 ==》 -4<=exp<p成立,按小數(shù)計(jì)數(shù)法計(jì)數(shù),保留2位小數(shù)點(diǎn) '3.14' >>> format(0.00003141566,'.1n') #和g相同 '3e-05' >>> format(0.00003141566,'.3n') #和g相同 '3.14e-05' >>> format(0.00003141566) #和g相同 '3.141566e-05'序列
reversed(seq)? ? # 返回一個反轉(zhuǎn)的迭代器。(seq 要轉(zhuǎn)換的序列,可以是 tuple, string, list 或 range)
l = (1,2,23,213,5612,342,43) print(reversed(l)) # <reversed object at 0x00000189156A9860> print(list(reversed(l))) # [43, 342, 5612, 213, 23, 2, 1]slice()?? ? ? ? ? ? ? ?# 實(shí)現(xiàn)切片對象,主要用在切片操作函數(shù)里的參數(shù)傳遞,不常用
sli = slice(1,5,2) print(l[sli])字典和集合:
dict()? ? #?函數(shù)用于創(chuàng)建一個字典。
set()??? ?#?函數(shù)用于創(chuàng)建一個集合。
frozenset(iterable)? #?返回一個凍結(jié)的集合,凍結(jié)后集合不能再添加或刪除任何元素。
相關(guān)內(nèi)置函數(shù)
len,sorted,enumerate,all,any,zip,filter,map
len(x)? ? ? ? ? ? ? ? ?# 返回x長度
any(iterable)? ? ?# 用于判斷給定的可迭代參數(shù) iterable 是否全部為 False,則返回 False,如果有一個為 True,則返回 True。元素除了是 0、空、FALSE 外都算 TRUE。Python 2.5 以上版本可用。
all(iterable)??? ? ? # 用于判斷給定的可迭代參數(shù) iterable 中的所有元素是否都為 TRUE,如果是返回 True,否則返回 False。元素除了是 0、空、FALSE 外都算 TRUE。Python 2.5 以上版本可用。
sorted(iterable, key=None, reverse=False)
對List、Dict進(jìn)行排序,Python提供了兩個方法
? ? ? ?用List的成員函數(shù)sort進(jìn)行排序,在本地進(jìn)行排序,不返回副本,修改原始數(shù)據(jù)
? ? ? ?用built-in函數(shù)sorted進(jìn)行排序(從2.4開始),返回副本,原始數(shù)據(jù)不變
參數(shù):
? ? ? ? iterable:是可迭代類型;
? ? ? ? key:傳入一個函數(shù)名,函數(shù)的參數(shù)是可迭代類型中的每一項(xiàng),根據(jù)函數(shù)的返回值大小排序;
? ? ? ? reverse:排序規(guī)則. reverse = True ?降序 或者 reverse = False 升序,有默認(rèn)值。
返回值:有序列表
# 列表按照其中每一個值的絕對值排序 l1 = [1,3,5,-2,-4,-6] l2 = sorted(l1,key=abs) print(l1) # [1, 3, 5, -2, -4, -6] print(l2) # [1, -2, 3, -4, 5, -6]# 列表按照每一個元素的len排序 l = [[1,2],[3,4,5,6],(7,),'123'] print(sorted(l,key=len)) # [(7,), [1, 2], '123', [3, 4, 5, 6]]enumerate(sequence, [start=0])? # 用于將一個可遍歷的數(shù)據(jù)對象(如列表、元組或字符串)組合為一個索引序列,同時列出數(shù)據(jù)和數(shù)據(jù)下標(biāo),一般用在 for 循環(huán)當(dāng)中。
參數(shù):
? ? sequence — 一個序列、迭代器或其他支持迭代對象。
? ? start — 下標(biāo)起始位置。
zip(iterable,…)? ? ?# (zip,翻譯拉鏈)用于將可迭代的對象作為參數(shù),將對象中對應(yīng)的元素打包成一個個元組,然后返回由這些元組組成的對象,如果各個迭代器的元素個數(shù)不一致,則返回列表長度與最短的對象相同
list1 = [1,2] list2 = ['a','b','c'] list3 = ['A','B','C','D'] print(zip(list1,list2,list3)) # <zip object at 0x103abc288> print(list(zip(list1,list2,list3))) # [(1,'a','A'),(2,'b','B')]注:Python 2.x 返回列表。
Python 3.x 返回迭代器。需用list()調(diào)用
filter(key=func,iterables)? ? ?# 用于過濾序列,過濾掉不符合條件的元素,返回一個迭代器對象,如果要轉(zhuǎn)換為列表,可以使用?list()?來轉(zhuǎn)換。filter接收一個函數(shù) f?和一個list,這個函數(shù)?f?的作用是對每個元素進(jìn)行判斷,返回 True或 False,filter()根據(jù)判斷結(jié)果自動過濾掉不符合條件的元素,返回由符合條件元素組成的新list。
# 例如,要從一個list [1, 4, 6, 7, 9, 12, 17]中刪除偶數(shù),保留奇數(shù),首先,要編寫一個判斷奇數(shù)的函數(shù): def is_odd(x):return x % 2 == 1 # 然后,利用filter()過濾掉偶數(shù): print(list(filter(is_odd, [1, 4, 6, 7, 9, 12, 17]))) # [1, 7, 9, 17]利用filter(),可以完成很多有用的功能,例如,刪除 None 或者空字符串:
def is_not_empty(s):return s and len(s.strip()) > 0 print(list(filter(is_not_empty, ['test', None, '', 'str', ' ', 'END']))) #['test', 'str', 'END']注意:?s.strip(rm) 刪除 s 字符串中開頭、結(jié)尾處的 rm 序列的字符。
當(dāng)rm為空時,默認(rèn)刪除空白符(包括’\n’, ‘\r’, ‘\t’, ‘ ‘),如下:
a = ' 123' a.strip()? ? # '123' a = '\t\t123\r\n' a.strip()? ? # '123'請利用filter()過濾出1~100中平方根是整數(shù)的數(shù),即結(jié)果應(yīng)該是:[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
import math def is_sqr(x):return math.sqrt(x) % 1 == 0 print(list(filter(is_sqr, range(1, 101)))) # [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]map(key=func,iterables,….)? ??# map函數(shù)應(yīng)用于每一個可迭代的項(xiàng),把每一個參數(shù)都以相應(yīng)的處理函數(shù)進(jìn)行迭代處理。map()函數(shù)接收兩個參數(shù),一個是函數(shù),一個是序列,map將傳入的函數(shù)依次作用到序列的每個元素,
# L = [1,2,3,4,],將f(x)=x^2作用于list上 L = [1,2,3,4,] def pow2(x): return x*x list(map(pow2,L)) # [1, 4, 9, 16]注:Python 2.x 返回列表。
Python 3.x 返回迭代器。需用list()調(diào)用
匿名函數(shù)
匿名函數(shù):為了解決那些功能很簡單的需求而設(shè)計(jì)的一句話函數(shù)
def calc(n):return n**n print(calc(10))# 換成匿名函數(shù) calc = lambda n:n**n print(calc(10))上面是我們對calc這個匿名函數(shù)的分析,下面給出了一個關(guān)于匿名函數(shù)格式的說明
函數(shù)名 = lambda 參數(shù) :返回值 # 參數(shù)可以有多個,用逗號隔開 # 匿名函數(shù)不管邏輯多復(fù)雜,只能寫一行,且邏輯執(zhí)行結(jié)束后的內(nèi)容就是返回值 # 返回值和正常的函數(shù)一樣可以是任意數(shù)據(jù)類型我們可以看出,匿名函數(shù)并不是真的不能有名字。匿名函數(shù)的調(diào)用和正常的調(diào)用也沒有什么分別。 就是 函數(shù)名(參數(shù)) 就可以了~~~
上面是匿名函數(shù)的函數(shù)用法。除此之外,匿名函數(shù)也不是浪得虛名,它真的可以匿名。在和其他功能函數(shù)合作的時候
現(xiàn)有兩個元組((‘a(chǎn)’),(‘b’)),((‘c’),(‘d’)),請使用python中匿名函數(shù)生成列表[{‘a(chǎn)’:’c’},{‘b’:’d’}]
# 答案一 test = lambda t1,t2 :[{i:j} for i,j in zip(t1,t2)] print(test(t1,t2)) # 答案二 print(list(map(lambda t:{t[0]:t[1]},zip(t1,t2)))) # 還可以這樣寫 print([{i:j} for i,j in zip(t1,t2)])注:max(), min(), map(), filter() , sort() 中都有key,都可以和匿名函數(shù)結(jié)合使用
重點(diǎn)掌握:
其他:input,print,type,hash,open,import,dir
str類型代碼執(zhí)行:eval,exec
數(shù)字:bool,int,float,abs,divmod,min,max,sum,round,pow
序列——列表和元組相關(guān)的:list和tuple
序列——字符串相關(guān)的:str,bytes,repr
序列:reversed,slice
數(shù)據(jù)集合——字典和集合:dict,set,frozenset
數(shù)據(jù)集合:len,sorted,enumerate,zip,filter,map
總結(jié)
以上是生活随笔為你收集整理的Python 之内置函数和匿名函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: pmp思维导图 第六版_PMP考试技巧攻
- 下一篇: websocket python爬虫_p