千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

手機站
千鋒教育

千鋒學(xué)習站 | 隨時隨地免費學(xué)

千鋒教育

掃一掃進入千鋒手機站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習站小程序
隨時隨地免費學(xué)習課程

當前位置:首頁  >  技術(shù)干貨  > Python之列舉常見的內(nèi)置函數(shù)

Python之列舉常見的內(nèi)置函數(shù)

來源:千鋒教育
發(fā)布人:xqq
時間: 2023-11-07 16:44:46 1699346686

abs()

返回數(shù)字的絕對值

map

根據(jù)函數(shù)對指定序列做映射map()函數(shù)接收兩個參數(shù),一個是函數(shù),一個是可迭代對象,map將傳入的函數(shù)依次作用到序列的每個元素,并把結(jié)果作為新的list返回。返回值:Python2返回列表Python3返回迭代器例子1:

defmul(x):

returnx*x

n=[1,2,3,4,5]

res=list(map(mul,n))

print(res)#[1,4,9,16,25]例子2:abs()返回數(shù)字的絕對值ret=map(abs,[-1,-5,6,-7])print(list(ret))#[1,5,6,7]

filter

filter()函數(shù)接收一個函數(shù)f(函數(shù))和一個list(可迭代對象),這個函數(shù)f的作用是對每個元素進行判斷,返回True或False,

filter()根據(jù)判斷結(jié)果自動過濾掉不符合條件的元素,返回由符合條件元素組成的新list。

defis_odd(x):

returnx%2==1

v=list(filter(is_odd,[1,4,6,7,9,12,17]))

print(v)#[1,7,9,17]

map與filter總結(jié)

#filter與map總結(jié)

#參數(shù):都是一個函數(shù)名+可迭代對象

#返回值:都是返回可迭代對象

#區(qū)別:

#filter是做篩選的,結(jié)果還是原來就在可迭代對象中的項

#map是對可迭代對象中每一項做操作的,結(jié)果不一定是原來就在可迭代對象中的項

isinstance\type

isinstance()函數(shù)來判斷一個對象是否是一個已知的類型,類似type()。

isinstance()與type()區(qū)別:

type()不會認為子類是一種父類類型,不考慮繼承關(guān)系。

isinstance()會認為子類是一種父類類型,考慮繼承關(guān)系。

如果要判斷兩個類型是否相同推薦使用isinstance()。

#例一a=2print(isinstance(a,int))#Trueprint(isinstance(a,str))#False

#type()與isinstance()區(qū)別

classA:

pass

classB(A):

pass

print("isinstance",isinstance(A(),A))#isinstanceTrue

print("type",type(A())==A)#typeTrue

print('isinstance',isinstance(B(),A))#isinstanceTrue

print('type',type(B())==A)#typeFalse

zip拉鏈函數(shù)

#zip拉鏈函數(shù),

#將對象中對應(yīng)的元素打包成一個個元組,

#然后返回由這些元組組成的列表迭代器。

#如果各個迭代器的元素個數(shù)不一致,則返回列表長度與最短的對象相同。

print(list(zip([0,1,3],[5,6,7],['a','b'])))

#[(0,5,'a'),(1,6,'b')]

zip()函數(shù)用于將可迭代的對象作為參數(shù),將對象中對應(yīng)的元素打包成一個個元組,然后返回由這些元組組成的列表。

>>>a=[1,2,3]

>>>b=[4,5,6]

>>>c=[4,5,6,7,8]

>>>zipped=zip(a,b)#打包為元組的列表

[(1,4),(2,5),(3,6)]

>>>zip(a,c)#元素個數(shù)與最短的列表一致

[(1,4),(2,5),(3,6)]

>>>zip(*zipped)#與zip相反,可理解為解壓,返回二維矩陣式

[(1,2,3),(4,5,6)]

reduce

'''

reduce()函數(shù)

reduce()函數(shù)會對參數(shù)序列中元素進行累積

函數(shù)將一個數(shù)據(jù)集合(鏈表、元組等)中的所有數(shù)據(jù)進行下列操作

'''

注意:

Python3已經(jīng)將reduce()函數(shù)從全局名字空間里移除了,它現(xiàn)在被放置在fucntools模塊里,如果想要使用它,則需要通過引入functools模塊來調(diào)用reduce()函數(shù):

fromfunctoolsimportreduce

defadd(x,y):

returnx+y

print(reduce(add,[1,2,3,4,5]))

#15

print(reduce(lambdax,y:x+y,[1,2,3,4,5]))#15

print(reduce(add,range(1,101)))

#5050

以上內(nèi)容為大家介紹了Python之列舉常見的內(nèi)置函數(shù),希望對大家有所幫助,如果想要了解更多Python相關(guān)知識,請關(guān)注IT培訓(xùn)機構(gòu):千鋒教育。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學(xué)習老師24小時內(nèi)將與您1V1溝通
免費領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT