原本是这样的:
>>> list(map(lambda x, y:[x, y],[1, 3, 5, 7, 9],[2, 4, 6, 8, 10]))
[[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]]
反着推理
分开看,
list() 最外层 是 【】,就把他去掉
那就相当于 map(lambda x, y:[x, y],[1, 3, 5, 7, 9],[2, 4, 6, 8, 10])
等于
[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]
然后搞清楚map()函数的用法:
百度有解释,https://www.runoob.com/python/python-func-map.html
语法:map(function, iterable, ...)
参数:iterable -- 一个或多个序列
举个例子:
# 提供了两个列表,对相同位置的列表数据进行相加
>>> map(lambda x, y: x + y, [1, 3, 5, 7, 9], [2, 4, 6, 8, 10])
[3, 7, 11, 15, 19]
因此:你这个匿名函数的 lambda x,y:[x, y] 其中的 [x,y] 只是他的一个值(一个元素)
后面的两个序列[1, 3, 5, 7, 9],[2, 4, 6, 8, 10]
组合成[x,y]的形式:
那就是
[1, 2], [3, 4], [5, 6], [7, 8], [9, 10] |