先看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))
运行效果:
总结
本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注服务器之家的更多内容!
原文链接:https://blog.csdn.net/weixin_44799217/article/details/119799110