-- coding: utf-8 --
“”” 演示NumPy数组的一些基本功能。 “”” import numpy as np
#########创建数组
先创建序列对象,使用array()转换为数组
a = np.array([1, 2, 3, 4]) b = np.array((5, 6, 7, 8)) c = np.array([[1, 2, 3, 4],[4, 5, 6, 7], [7, 8, 9, 10]]) print b print c
数组的形状通过shape属性获得,描述数组各个轴长度
print a.shape print c.shape
c.shape = 4,3 #并非转置,只是改变每个轴的大小,数组元素在内存中的位置不变 print c
c.shape = 2, -1 #自动计算-1轴的长度,当前为6 print c
d = a.reshape((2,2)) print d
a[1] = 100 #将a数组的第一个元素修改,d中相应位置也发生变化,a和d共享数据存储空间 print d
print c.dtype #数组的元素类型
e = np.array([ [1, 2, 3, 4], [4, 5, 6, 7], [7, 8, 9, 10]], dtype=np.float)
print e
f = np.array([ [1, 2, 3, 4], [4, 5, 6, 7], [7, 8, 9, 10]], dtype=np.complex)
print f
print np.typeDict[“d”] print np.typeDict[“double”] print np.typeDict[“float64”] print set(np.typeDict.values())
创建数组的函数
print np.arange(0, 1, 0.1) #开始为0,终值为1不出现在数组中,步长为0.1 print np.linspace(0, 1, 12) #开始,终值,元素个数,步长为1/9 np.linspace(0,1,10,endpoint = False) #步长为1/10,endpoint的值会改变数组的等差步长 print np.logspace(0, 2, 20) #起始值为10^0,终值为10^2,5个元素的等比数组 np.logspace(0,1,12,base = 2,endpoint = False) #创建一个比例为2^(1/12)的等比数组
np.empty((2,3),np.int) #只分配内存,不进行初始化 np.zeros(4,np.float) #元素初始化为0的数组 np.ones() #元素初始化为1
从字节序列或文