溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python之并行遍歷zip,遍歷可迭代對象的內(nèi)置函數(shù)map

發(fā)布時間:2020-09-06 15:27:18 來源:網(wǎng)絡(luò) 閱讀:1015 作者:丁香花下 欄目:編程語言

????????????????????????????????Python之并行遍歷zip,遍歷可迭代對象的內(nèi)置函數(shù)map,filter


一、使用內(nèi)置函數(shù)zip并行遍歷

zip()的目的是映射多個容器的相似索引,以便它們可以僅作為單個實體使用。

●?基礎(chǔ)語法:zip(*iterators)

●?參數(shù):iterators為可迭代的對象,例如list,string

●?返回值:返回單個迭代器對象,具有來自所有容器的映射值

'''
例如:
有兩個列表
names?=?['zhangsan','lisi','wangwu']
ages?=?[17,18,19]
zhangsan對應(yīng)17?lisi對應(yīng)18?wangwu對應(yīng)19
同時遍歷這兩個列表
'''

#?1、使用for?in?循環(huán)可以實現(xiàn)
names?=?['zhangsan','lisi','wangwu']
ages?=?[17,18,19]
for?i?in?range(3):
????print('name?is?%s,age?is?%i'?%?(names[i],ages[i]))

'''
name?is?zhangsan,age?is?17
name?is?lisi,age?is?18
name?is?wangwu,age?is?19
'''

#?2、使用?zip進(jìn)行并行遍歷更方便
for?name,age?in?zip(names,ages):
????print('name?is?%s,age?is?%i'?%?(name,age))

'''
name?is?zhangsan,age?is?17
name?is?lisi,age?is?18
name?is?wangwu,age?is?19
'''


二、遍歷可迭代對象的內(nèi)置函數(shù)map

map()函數(shù)的主要作用是可以把一個方法依次執(zhí)行在一個可迭代的序列上,比如List等,具體的信息如下:

● 基礎(chǔ)語法:map(fun, iterable)

● 參數(shù):fun是map傳遞給定可迭代序列的每個元素的函數(shù)。iterable是一個可以迭代的序列,序列中的每一個元素都可以執(zhí)行fun

● 返回值:map object

result?=?map(ord,'abcd')
print(result)?#?<map?object?at?0x7f1c493fc0d0>
print(list(result))?#?[97,?98,?99,?100]

result?=?map(str.upper,'abcd')
print(tuple(result))?#?'A',?'B',?'C',?'D')


三、遍歷可迭代對象的內(nèi)置函數(shù)filter

filter()方法借助于一個函數(shù)來過濾給定的序列,該函數(shù)測試序列中的每個元素是否為真。

●?基礎(chǔ)語法:filter(fun, iterable)

●?參數(shù):fun測試iterable序列中的每個元素執(zhí)行結(jié)果是否為True,iterable為被過濾的可迭代序列

●?返回值:可迭代的序列,包含元素對于fun的執(zhí)行結(jié)果都為True


result?=?filter(str.isalpha,'123abc')
print(result)?#?<filter?object?at?0x7fd47f2045d0>
print(list(result))?#?['a',?'b',?'c']

result?=?filter(str.isalnum,'123*(^&abc')
print(list(result))?#?['1',?'2',?'3',?'a',?'b',?'c']

#?filter示例
def?fun(values):
????Internal_value?=?['i','o','b','c','d','y','n']
????if?values?in?Internal_value:
????????return?True
????else:
????????return?False
test_value?=?['i','L','o','v','e','p','y','t','h','o','n']
result?=?list(filter(fun,test_value))
print(result)?#?['i',?'o',?'y',?'o',?'n']


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI