在numpy中,可以在切片语法中使用'newaxis'对象来创建长度为1的轴,例如:
import numpy as np
print np.zeros((3,5))[:,np.newaxis,:].shape
# shape will be (3,1,5)
Run Code Online (Sandbox Code Playgroud)
该文件指出一个也可以用None代替newaxis,效果是完全一样的.
有没有理由选择一个而不是另一个?是否有任何一般偏好或风格指南?我的印象是newaxis更受欢迎,可能是因为它更明确.那么有什么理由None被允许吗?
AFo*_*lia 93
None是允许的,因为numpy.newaxis它只是一个别名None.
In [1]: import numpy
In [2]: numpy.newaxis is None
Out[2]: True
Run Code Online (Sandbox Code Playgroud)
作者可能选择了它,因为它们需要一个方便的常数,并且None可用.
至于为什么你应该更喜欢newaxis过None:主要是因为它更明确,部分是因为某一天的numpy作者可能将其更改为比其他的东西None.(他们不打算,也可能不会,但没有充分的理由可以选择None.)
| 归档时间: |
|
| 查看次数: |
24528 次 |
| 最近记录: |