当我尝试打印ndarray中的每个条目时,我使用以下命令:
A = np.array([[(1,2,3)],
[1,2,3],
[1,2,3]])
dim = len(A)
for i in range(dim):
for j in range(dim):
print(A[i,j])
但是它表明:数组的索引过多 我在哪里错了?
答案 0 :(得分:1)
问题是您的numpy数组中的元组:
pwmWrite
因此,这意味着第一个子列表包含一个元素:一个三元组。由于这些列表中没有包含不同数量的元素,因此numpy将构造 1D 对象数组:
test('should call pwmWrite() and getStatus()', async () => {
const app = {}
const io = { emit: jest.fn() }
const req = {
app: {
locals: {
target1: { pwmWrite: jest.fn() }
}
}
}
}
expect.assertions(1)
expect(req.app.locals.target1.pwmWrite).toHaveBeenCalled()
await expect(getStatus(app, io)).toHaveBeenCalled()
})
因此,该数组只是对A = np.array([[(1,2,3)],
[1,2,3],
[1,2,3]])
的引用的一维数组,这些对象可以是列表,但是它们可以是任何东西。因此,只能索引一个一个维度。
如果省略圆括号,则会列出三个元素,例如:
>>> A
array([list([(1, 2, 3)]), list([1, 2, 3]), list([1, 2, 3])], dtype=object)
然后使用两个索引查询完全没有问题。