HUX布斯
numpy 数组的索引由元组而不是列表寻址。使用indx = (1, 1, 1)。作为扩展,如果你想调用索引 (1, 1, 1) 和 (2, 2, 2),你可以使用>>> indx = ([1, 2], [1, 2], [1, 2])>>> x[indx]array([13, 26])列表行为背后的基本原理是 numpy 按顺序处理列表,所以>>> indx = [1, 1, 1]>>> x[indx]array([[[ 9, 10, 11], [12, 13, 14], [15, 16, 17]], [[ 9, 10, 11], [12, 13, 14], [15, 16, 17]], [[ 9, 10, 11], [12, 13, 14], [15, 16, 17]]])它返回一个包含三个元素的列表,每个元素都等于 x[1]。
慕沐林林
这是Unpacking tuples/arrays/lists as indices for Numpy Arrays的副本,但您可以只创建一个元组import numpy as npdef main(): my_array = np.array( [ [[0, 1, 2], [3, 4, 5], [6, 7, 8]], [[9, 10, 11], [12, 13, 14], [15, 16, 17]], [[18, 19, 20], [21, 22, 23], [24, 25, 26]], ] ) print(f"my_array[1,1,1]: {my_array[1,1,1]}") indx = (1, 1, 1) print(f"my_array[indx]: {my_array[indx]}")if __name__ == "__main__": main()会给my_array[1,1,1]: 13my_array[indx]: 13