gpt4 book ai didi

python - 适应性函数来分割嵌套列表?

转载 作者:行者123 更新时间:2023-12-01 05:49:29 27 4
gpt4 key购买 nike

如果我有一个方阵作为 python 中的嵌套列表,我可以将其分成几个大小相等的框,并创建一个新列表,其中每个元素都是其中一个框中的数字列表。例如

a = [[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, 11, 12],
[13, 14, 15 ,16]]

b = [[a[0][0], a[0][1], a[1][0], a[1][1]],
[a[0][2], a[0][3], a[1][2], a[1][3]],
[a[2][0], a[2][1], a[3][0], a[3][1]],
[a[2][2], a[2][3], a[3][2], a[3][3]]]

有更简单的方法吗?有没有办法将其设置为一个函数,我可以将其应用于不同大小的矩阵并指定框的大小?

最佳答案

以下内容与您所拥有的相同,并且更加简洁:

b = [a[0][:2] + a[1][:2],
a[0][2:] + a[1][2:],
a[2][:2] + a[3][:2],
a[2][2:] + a[3][2:]]

或等效的列表理解:

b = [a[i][s] + a[i+1][s] for i in (0,2) for s in (slice(None,2), slice(2,None))]

关于python - 适应性函数来分割嵌套列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14901246/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com