import numpy as np # specify import if you are using it with some other name
np.array([1, 2, 3]) -> array([1, 2, 3])
np.array([1, 2, 3])[None] -> array([[1, 2, 3]])
请注意,第二行有一个额外的维度。有人可以向我解释这种行为吗?这不是乘法。 np.array([1, 2, 3])*[None]
会引发错误。
答案 0 :(得分:2)
这与np.array([1, 2, 3])[np.newaxis]
完全相同。 None
恰好是为newaxis
选择的值;它可能是任何不具有意义的切片或索引值的东西。
答案 1 :(得分:0)
>>> numpy.array([1,2,3])[0] # find values at specific index in array
1
>>> numpy.array([1,2,3])[1]
2
>>> numpy.array([1,2,3])[None] # when you pass None as index it gives you whole list
array([[1, 2, 3]])
当您使用numpy.array(<your-list>)*[value]
时,您会感到困惑,这会将数组中的所有值与值相乘。这里列表中的所有值都是整数,只能乘以整数或浮点值。
None
是python中的NoneType object
(准确地说,这是我对python3的声明,对python2不太了解)并且你不能将整数值与None对象相乘。因为如果你处理2 * None
它没有任何意义。