Python 列表和元组的行为不同
我很清楚这一点,但是很少有例子表明代码对这两个方面的处理是不同的(与编码约定相反),所以我(草率地)互换使用了它们 然后我遇到了一个案例,他们给出了完全不同的行为:Python 列表和元组的行为不同,python,arrays,numpy,scipy,Python,Arrays,Numpy,Scipy,我很清楚这一点,但是很少有例子表明代码对这两个方面的处理是不同的(与编码约定相反),所以我(草率地)互换使用了它们 然后我遇到了一个案例,他们给出了完全不同的行为: >>> import numpy as np >>> a = np.arange(9).reshape(3,3) >>> a array([[0, 1, 2], [3, 4, 5], [6, 7, 8]]) >>> idx = (1,
>>> import numpy as np
>>> a = np.arange(9).reshape(3,3)
>>> a
array([[0, 1, 2],
[3, 4, 5],
[6, 7, 8]])
>>> idx = (1,1)
>>> a[idx]
4
>>> idx = [1,1]
>>> a[idx]
array([[3, 4, 5],
[3, 4, 5]])
有人能解释一下这是怎么回事吗?更重要的是,在scipy中,这个陷阱还会出现在哪里 您将获得不同的行为,因为在numpy中,支持三种类型的索引
- 基本切片
- 高级索引
- 记录存取