Python (numpy) で出てくるコロン,カンマ [:,]

Python (というよりnumpy) のコードを読んでて突然 x[:,0] みたいな表記がでてきて、 Python2.x系はかなり長いこと使っているのに :,何てPythonにあったっけ...何だこれ...これシンタックスエラーじゃないんだな...と困惑してしまった。

調べたところ、まず最初のコロン:はスライシングの: (x[1:]とかの:)だった。 そしてPythonでは実はスライシングはカンマ,で区切って複数[]の中に書くことができる(全く知らなかった)。 言語仕様のSlicingに書かれているextended_slicingというもののようである。

import numpy
a = numpy.array([[1,2],[3,4]])
print a[:, 0]  # array([1, 3])
最終更新: 2015/9/4