以下操作都需要导入numpy模块(没有该模块的需要安装)
from numpy import *
1. 创建数组:
创建一维数组:>>>a=arange(5) 此时a就是一维数组。
创建多维数组:>>>a=array([[1,2,3],[4,5,6]]) 此时a就是二维数组2. 获取数组的数据类型:
Numpy数组一般是同质的,即数组中所有元素类型必须是一致的。
>>>a.dtype
dtype(int32)3. 确定数组的维数:
>>>a
array([0,1,2,3,4])
>>>a.shape
(5,)
shape返回一个元组,元组的元素即为numpy数组中每一个维度上的大小。由于a为一维数组,所以a.shape为包含一个元素的元组。
选取数组元素:
首先创建一个二维数组:
>>>a=array([[1,2,3],[4,5,6]])
选取数组中的某元素,可以采用a[m][n],也可以采用a[m,n]
>>>a[0][1]
2
>>>a[0,1]
2
Numpy数据类型:
Numpy提供了不同精度的数据类型,并且它们占用的内存空间也是不同的。在numpy中,大部分数据类型名是以数字结尾的,这个数字表示其在内存中占用的位数:
类型 | 描述 |
bool | 用一位存储的布尔类型,值为True或False |
inti | 由所在平台决定其精度的整数,一般为int32或int64 |
int8 | 整数,范围为-128-127 |
int16 | 整数,范围为-32768-32767 |
int32 | 整数,范围为-2的31次到2的31次减1 |
int64 | 整数,范围为-2的63次到2的63次减1 |
uint8 | 无符号整数,范围为0-255 |
uint16 | 无符号整数,范围为0-65535 |
类型 | 描述 |
uint32 | 无符号整数,范围为0到2的32次减1 |
uint64 | 无符号整数,范围为0到2的64次减1 |
float16 | 半精度浮点数,其中用1位表示正负,5位表示指数,10位表示尾数 |
float32 | 半精度浮点数,其中用1位表示正负,8位表示指数,23位表示尾数 |
float64或float | 双精度浮点数,其中用1位表示正负,11位表示指数,52位表示尾数 |
complex64 | 复数,分别用两个32位浮点数表示实部和虚部 |
complex128或complex | 复数,分别用两个64位浮点数表示实部和虚部 |
1. 创建自定义数据类型:
>>>t=dtype([('name',str,30),('age',int32),('salary',float32)])
查看数据类型:
>>>t['name']
在创建自定义的数据的数组时,需要在参数中指定数据类型,否则所创建的数组会自动将数组中的元素统一为同一类型(例如,数组中既有字符串也有整数,则会统一为字符串)。
>>>items=array([('zhangsan',20,2000.0),('lisi',32,6754.1),('wangwu',32,4567.0)],dtype=t)
>>>items[0]
('zhangsan',20,2000.0)