一、数组转换
obj.item(*args)
...
def item(self, *args):
"""
parameter:
*args:
- None: 只有当数组a.size == 1时才能正确执行。
- int_type: 作为数组索引,并返回对应位置元素。
- tuple of int_type: 作为数组索引,并返回对应元素。
return:
z: 标准Python常量对象。
"""
...
>>>np.random.seed(123)
>>>x = np.random.randint(9, size=(3, 3))
>>>x
array([[2, 2, 6],
[1, 3, 6],
[1, 0, 1]])
>>>x.item(3)
1
x.item(7)
0
>>>x.item((0, 1))
2
>>>x.item((2, 2))
1
obj.tolist()
...
def tolist(self):
"""
parameter: None
return:
y: 嵌套的列表对象。
"""
...
>>>a = np.uint32([1, 2])
>>>a_list = list(a)
>>>a_list
[1, 2]
>>>type(a_list[0])
<class 'numpy.uint32'>
>>>a_tolist = a.tolist()
>>>a_tolist
[1, 2]
>>>type(a_tolist[0])
<class 'int'>
>>>a = np.array([[1, 2], [3, 4]])
>>>list(a)
[array([1, 2]), array([3, 4])]
>>>a.tolist()
[[1, 2], [3, 4]]
>>>a = np.array(1)
>>>list(a)
Traceback (most recent call last):
...
TypeError: iteration over a 0-d array
>>>a.tolist()
1
obj.tobytes(order="C)
...
def tobyters(self, order='C'):
"""
parameter:
order: {'C', 'A', 'F'}
return:
s: bytes。
"""
...
>>>x = np.array([[0, 1], [2, 3]], dtype='<u2')
>>>x.tobytes()
b'\x00\x00\x01\x00\x02\x00\x03\x00'
>>>x.tobytes('C') == x.tobytes()
True
>>>x.tobytes('F')
b'\x00\x00\x02\x00\x01\x00\x03\x00'
二、ndarray算术、矩阵乘法和比较运算
1、比较运算符
ndarray._lt_(self, value, /)
:返回 self<value.ndarray._le_(self, value, /)
:返回 self<=value.ndarray._gt_(self, value, /)
:返回 self>value.ndarray._ge_(self, value, /)
:返回 self>=value.ndarray._eq_(self, value, /)
:返回 self==value.ndarray._ne_(self, value, /)
:返回 self!=value.
2、算术运算
ndarray.__add__(self, value, /)
:返回 self+value.ndarray.__sub__(self, value, /)
: 返回 self-value.ndarray.__mul__(self, value, /)
: 返回 self*value.ndarray.__truediv__(self, value, /)
:返回 self/value.ndarray.__floordiv__(self, value, /)
:返回 self//value.ndarray.__mod__(self, value, /)
:返回 self%value.ndarray.__divmod__(self, value, /)
:返回 divmod(self, value).ndarray.__pow__(self, value[, mod])
:返回 pow(self, value, mod).ndarray.__lshift__(self, value, /)
:返回 self<<value.ndarray.__rshift__(self, value, /)
:返回 self>>value.ndarray.__and__(self, value, /)
:返回 self&value.ndarray.__or__(self, value, /)
:返回 selfndarray.__xor__(self, value, /)
:返回 self^value.
3、就地运算
ndarray.__iadd__(self, value, /)
: 返回 self+=value。ndarray.__isub__(self, value, /)
: 返回 self==value。ndarray.__imul__(self, value, /)
: 返回 self*=value。ndarray.__itruediv__(self, value, /)
: 返回 self/=value。ndarray.__ifloordiv__(self, value, /)
: 返回 self//=value。ndarray.__imod__(self, value, /)
: 返回 self%=value。ndarray.__ipow__(self, value, /)
: 返回 self**=value。ndarray.__ilshift__(self, value, /)
: 返回 self<<=value。ndarray.__irshift__(self, value, /)
: 返回 self>>=value。ndarray.__iand__(self, value, /)
: 返回 self&=value。ndarray.__ior__(self, value, /)
:返回 selfndarray.__ixor__(self, value, /)
: 返回 self^=value。
4、矩阵乘法
ndarray.__matmul__(self, value, /)
: 返回 self@value。