100

numpyでは、スライス構文で「newaxis」オブジェクトを使用して、長さ1の軸を作成できます。例:

import numpy as np
print np.zeros((3,5))[:,np.newaxis,:].shape
# shape will be (3,1,5)

ドキュメントNoneには、の代わりに使用することもできると記載されていnewaxisますが、効果はまったく同じです。

どちらかを選ぶ理由はありますか?一般的な好みやスタイルガイドはありますか?私の印象では、newaxisそれはより明確であるためか、より人気があります。Noneそれで、なぜ許可されるのか理由はありますか?

4

1 に答える 1

112

Nonenumpy.newaxisは単に のエイリアスであるため許可されNoneます。

In [1]: import numpy

In [2]: numpy.newaxis is None
Out[2]: True

作成者はおそらく、便利な定数が必要であり、利用可能だったので、それを選択しましたNone

newaxisよりも優先する理由については、None主にそれがより明示的であるためであり、部分的には、いつかnumpy作者がそれを 以外のものに変更する可能性があるためですNone。(彼らは計画しておらず、おそらく計画していませんが、好む正当な理由はありませんNone。)

于 2009-06-03T15:05:52.140 に答える