2.2.3.4 数组接口协议
- 多维度buffers
- 存在数据类型信息
- Numpy-特定方法;慢慢的废弃(不过不会消失)
- 然而,没有整合在Python中
也可以看一下:文档:http://docs.scipy.org/doc/numpy/reference/arrays.interface.html
In [8]:
x = np.array([[1, 2], [3, 4]])
x.__array_interface__
Out[8]:
{'data': (4298825184, False),
'descr': [('', '<i8')],
'shape': (2, 2),
'strides': None,
'typestr': '<i8',
'version': 3}
In [11]:
# import Image
from PIL import Image
img = Image.open('data/test.png')
img.__array_interface__
Out[11]:
{'data': '\xfe\x00\x00\xff\xfe\x00\x00...\xff\xfe\x00\x00\xff',
'shape': (200, 200, 4),
'typestr': '|u1'}
In [12]:
x = np.asarray(img)
x.shape
Out[12]:
(200, 200, 4)
In [13]:
x.dtype
Out[13]:
dtype('uint8')
笔记: 一个对C更友好的数组接口变体也被定义出来了。