Python-嵌套列表的推导式

发布时间:2020-07-01 21:30:36 作者:YWBOY
来源:网络 阅读:775

列表推导式的第一个表达式可以是任何表达式,包括另外一个列表推导式。
考虑下面的3×4矩阵的示例,其被实现为长度为4的3个列表的列表:

list = [
    [1, 2, 3, 4],
    [5, 6, 7, 8],
    [9, 10, 11, 12]
]
#下面的列表推导式将转置行和列:
new_list = [[n[i] for n in list] for i in range(4)]
print(new_list)
#输出结果:
[[1, 5, 9], [2, 6, 10], [3, 7, 11], [4, 8, 12]]

上面的例子等效于:

list = [
    [1, 2, 3, 4],
    [5, 6, 7, 8],
    [9, 10, 11, 12]
]
li = []
for i in range(4):
    li.append([n[i] for n in list])
print(li)
#输出结果:
[[1, 5, 9], [2, 6, 10], [3, 7, 11], [4, 8, 12]]

内建函数复杂的流程句,zip()函数这个更容易实现:

list = [
    [1, 2, 3, 4],
    [5, 6, 7, 8],
    [9, 10, 11, 12]
]
list(zip(*list))
输出:
[(1, 5, 9), (2, 6, 10), (3, 7, 11), (4, 8, 12)]
推荐阅读:
  1. python列表推导式(16)
  2. 浅谈python的列表推导式

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

python 嵌套列表

上一篇:Centos 中 TCPWrappers访问控制

下一篇:使用ASIHttpRequest 导入ASIHttpRequest注意事项

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》