【发布时间】:2021-08-24 23:59:12
【问题描述】:
我是 python 的初学者,所以这可能是一个非常愚蠢的问题:
所以我在研究人们如何直接访问数组。
我创建了一个数组array = np.array([2,3,4])
当我试图访问它时,而不是说 print(array[1])
我说print(array[[1]]) 和
它输出了[3],而不是仅仅说3。
这是为什么呢?我认为这可能与人们在数据框中使用[[]] 访问类别的方式有关,但我不太确定这里的联系。
如果可能的话,有人可以简单地解释一下当人们使用[[]]时计算机实际上在做什么。
我尝试查看 pandas 文档,但我真的不明白,因为我只是 python 的初学者。
【问题讨论】:
-
这是一个麻木的事情。
[[..]]语法允许您从数组中获取多个元素。这就是为什么你要返回一个列表 -
相关文档可见here。
-
即使没有 numpy,
[3]也是一个包含 3 的列表,[[3]]是一个包含一个包含 3 的列表。两者在它们的上下文中都很有用。 -
这叫做“索引”。
-
@TimRoberts 呃,不,在索引的上下文中,
array[3]等价于array.__getitem__(3),而array[[3]]等价于array.__getitem__([3])
标签: python dataframe numpy indexing