我在 python 中有一个这样的列表:
a = [[5, -4, 6], [9, 0, 6], [20, -1, 9], [6, 5, -7]]
我有一个 b
数组,如下所示:
b = [0, 1, 2, 0]
我怎样才能得到这个列表?
[ a[0][b[0]], a[1][b[1]], a[2][b[2]], a[3][b[3]] ]
我应该提一下,b
和a
的长度都是变量n
。
我知道我可以用这些值创建一个带有循环的列表,但我正在为此寻找一种语法(类似于 map)。
感谢您的帮助。
最佳答案
zip
的快速方法是:
a = [[5, -4, 6], [9, 0, 6], [20, -1, 9], [6, 5, -7]]
b = [0, 1, 2, 0]
result = [ai[bi] for ai, bi in zip(a, b)]
print(result)
# [5, 0, 9, 6]
关于python - 选择二维数组第二维的特定元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50696370/