リストとタプルには違いがあり、タプルは単なる定数リストではないことは十分承知していますが、 (コーディング規約ではなく)コードによって実際に 2 つが異なって扱われる例はほとんどないので、 (ずさんに)それらを同じ意味で使用しました。
次に、まったく異なる動作をするケースに遭遇しました。
>>> 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 のどこに現れるのでしょうか?