2024-04-26 18:43:44 发布
网友
当我试图打印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])
但是它显示:数组的索引太多 我哪里做错了?你知道吗
问题是numpy数组中的元组:
A = np.array([[(1,2,3)], [1,2,3], [1,2,3]])
因此,这意味着第一个子列表包含一个元素:一个3元组。由于这些列表包含的元素数量不同,numpy将构建一个1D对象数组:
>>> A array([list([(1, 2, 3)]), list([1, 2, 3]), list([1, 2, 3])], dtype=object)
所以这个数组只是一个1D数组,引用object,这些对象可以是列表,但是它们可以是任何东西。因此,只有一个维度可以被索引。你知道吗
object
如果省略圆括号,我们会得到一个包含三个元素的列表,如:
>>> A = np.array([[1,2,3], ... [1,2,3], ... [1,2,3]]) >>> A array([[1, 2, 3], [1, 2, 3], [1, 2, 3]])
然后用两个索引进行查询就完全没有问题了。你知道吗
问题是numpy数组中的元组:
因此,这意味着第一个子列表包含一个元素:一个3元组。由于这些列表包含的元素数量不同,numpy将构建一个1D对象数组:
所以这个数组只是一个1D数组,引用
object
,这些对象可以是列表,但是它们可以是任何东西。因此,只有一个维度可以被索引。你知道吗如果省略圆括号,我们会得到一个包含三个元素的列表,如:
然后用两个索引进行查询就完全没有问题了。你知道吗
相关问题 更多 >
编程相关推荐