马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
原题如下:
'''还记得 zip 吗?使用 zip 会将两数以元祖的形式绑定在一块,例如:
list(zip([1, 3, 5, 7, 9], [2, 4, 6, 8, 10]))得到的输出为:[(1, 2), (3, 4), (5, 6), (7, 8), (9, 10)]
但如果我希望打包的形式是灵活多变的列表而不是元祖
(希望是 [[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]] 这种形式),
你能做到吗?(采用 map() 和 lambda 表达式'''
答案代码如下:
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(函数, 参数)每个参数依次调用函数,函数是lambda x, y : [x, y],参数是[1, 3, 5, 7, 9], [2, 4, 6, 8, 10],依次调用之后返回迭代器,list之后得到 [[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]]
|