python中map()函數使用方法詳解

先看map()函數底層封裝介紹:

註釋中翻譯為:

map(func, *iterables)——> map對象

創建一個迭代器,使用來自的參數計算函數每個迭代器。當最短的迭代器耗盡時停止。

作用:

map(func, lst) ,將傳⼊的函數變量 func 作⽤到 lst 變量的每個元素中,並將結果組成新的列表 (Python2)/ 迭代器(Python3) 返回。

註意:

map()返回的是一個迭代器,直接打印map()的結果是返回的一個對象。

示例代碼1:

lst = ['1', '2', '3', '4', '5', '6']
print(lst)
lst_int = map(lambda x: int(x), lst)
# print(list(lst_int))
for i in lst_int:
    print(i, end=' ')
print()
print(list(lst_int))

運行效果:

示例代碼2:

lst = map(str, [i for i in range(10)])
print(list(lst))
lst_2 = map(str, range(5))
print(list(lst_2))

運行效果:

示例代碼3:

list1 = [1, 2, 3, 4, 5]
def func(x):
    return x ** 2
result = map(func, list1)
print(result)
print(list(result))

運行效果:

示例代碼4:

list1 = [1, 2, 3, 4, 5]
list2 = [1, 2, 3, 4, 5, 6]
list3 = [1, 2, 3, 4, 5, 6, 7]
def func1(x, y, z):
    return x + y + z
def func2(x, y, z):
    return x, y, z
result1 = map(func1, list1, list2, list3)
print(result1)
print(list(result1))
result2 = map(func2, list1, list2, list3)
print(result2)
print(list(result2))

運行效果:

總結

本篇文章就到這裡瞭,希望能給你帶來幫助,也希望您能夠多多關註WalkonNet的更多內容!

推薦閱讀: