# -*- coding: utf-8 -*-
"""
Created on Sat May 18 23:03:20 2019
@author: User
"""
import numpy as np
#自定义数据类型
goodslist = np.dtype([('name', np.str_, 50), ('location', np.str_, 30),
('price', np.float16), ('volume', np.int32)])
print(goodslist)
#构造结构数组
goods = np.array([('Gree Airconditoner', 'JD.com', 6245, 1),
('Somy Blueray Player', 'Amazon.com', 3210, 2),
('Apple Macbook Pro 13', 'Tmall.com', 12388, 5),
('iPhoneSE', 'JD.com', 4588, 2)], dtype = goodslist)
print(goods)
#也可以使用描述结构类型的各个字段的字典来定义结构数组
print('\n使用描述结构类型的各个字段的字典来定义结构数组:\n')
goodsdict = np.dtype({'names':['name', 'location', 'price', 'volume'],
'formats':['S50', 'S30', 'f', 'i']})
goods_new = np.array([('Gree Airconditoner', 'JD.com', 6245, 1),
('Somy Blueray Player', 'Amazon.com', 3210, 2),
('Apple Macbook Pro 13', 'Tmall.com', 12388, 5),
('iPhoneSE', 'JD.com', 4588, 2)], dtype = goodsdict)
print(goods_new)
运行:
runfile('D:/0python/3.1.2.1numpy结构数组.py', wdir='D:/0python')
[('name', '<U50'), ('location', '<U30'), ('price', '<f2'), ('volume', '<i4')]
[('Gree Airconditoner', 'JD.com', 6244., 1)
('Somy Blueray Player', 'Amazon.com', 3210., 2)
('Apple Macbook Pro 13', 'Tmall.com', 12380., 5)
('iPhoneSE', 'JD.com', 4588., 2)]
使用描述结构类型的各个字段的字典来定义结构数组:
[(b'Gree Airconditoner', b'JD.com', 6245., 1)
(b'Somy Blueray Player', b'Amazon.com', 3210., 2)
(b'Apple Macbook Pro 13', b'Tmall.com', 12388., 5)
(b'iPhoneSE', b'JD.com', 4588., 2)]