1.创建数组(ndarray)对象方式
The n-dimensional array object
(1) array()
传入参数为列表
np.array([1, 2, 3]) ==> [1 2 3]
传入参数为元组
np.array((4, 5, 6)) ==> [4 5 6]
(2) zeros()
传入元组指定形状,传入dtype指定元素类型
z1 = np.zeros((2, 3))
print(z1,z1.dtype,sep='\n')
################RESULT###########################
[[0. 0. 0.]
[0. 0. 0.]]
float64
传入元组指定形状,传入dtype指定元素类型
z2 = np.zeros((3, 3),dtype='int32')
################RESULT###########################
[[0 0 0]
[0 0 0]
[0 0 0]]
传入列表指定形状
print(np.zeros([3, 3]))
################RESULT###########################
[[0. 0. 0.]
[0. 0. 0.]
[0. 0. 0.]]
(3) ones()
传入元组指定形状
o1 = np.ones((2, 3))
print(o1,o1.dtype,sep='\n')
################RESULT###########################
[[1. 1. 1.]
[1. 1. 1.]]
float64
传入元组指定形状,传入dtype指定元素类型
o2 = np.ones((3, 3),dtype='int64')
print(o2)
################RESULT###########################
[[1 1 1]
[1 1 1]
[1 1 1]]
传入列表指定形状
print(np.ones([3, 2]))
################RESULT###########################
[[1. 1.]
[1. 1.]
[1. 1.]]
(4) full()
print(np.full([4, 5],3))
print(np.full((5, 5),5.2))
################RESULT###########################
[[3 3 3 3 3]
[3 3 3 3 3]
[3 3 3 3 3]
[3 3 3 3 3]]
[[5.2 5.2 5.2 5.2 5.2]
[5.2 5.2 5.2 5.2 5.2]
[5.2 5.2 5.2 5.2 5.2]
[5.2 5.2 5.2 5.2 5.2]
[5.2 5.2 5.2 5.2 5.2]]
(5) eye()
print(np.eye(3),np.eye(3).dtype,sep='\n')
print(np.eye(4,dtype='int32'))
################RESULT###########################
[[1. 0. 0.]
[0. 1. 0.]
[0. 0. 1.]]
float64
[[1 0 0 0]
[0 1 0 0]
[0 0 1 0]
[0 0 0 1]]
(4) arange()
与range()类似,不同之处在于range()返回值为列表,arange返回值为ndarray对象
print(np.arange(10, 30, 3)) ==> [10 13 16 19 22 25 28]
print(type(np.arange(10, 30, 3))) ==> <class 'numpy.ndarray'>
(5) random
random.random() 创建m*n的数组,默认是0~1之间的小数
str = '---------------------------------------'
print(np.random.random(10))
print(str)
print(np.random.random(size=(2,3)))
print(str)
print(np.random.random(size=[2,3,4]))
################RESULT###########################
[0.54564933 0.21921807 0.96924142 0.81042781 0.72628237 0.73078936 0.55883033 0.60837832 0.6992012 0.70965971]
---------------------------------------
[[0.69298368 0.70073361 0.72163721]
[0.58352101 0.35770479 0.93988921]]
---------------------------------------
[[[0.74479338 0.47638063 0.74822698 0.57948663]
[0.3295297 0.79709587 0.04765184 0.90306151]
[0.0709381 0.91575019 0.34546081 0.56014478]]
[[0.34851798 0.94224613 0.00926888 0.17997587]
[0.70062253 0.09349961 0.97130904 0.11723707]
[0.69546203 0.19736921 0.19447501 0.3346418 ]]]
random.randint() 创建指定数字范围的多维数组
str = '---------------------------------------'
print(np.random.randint(10, 99, 5))
print(str)
print(np.random.randint(10, 99, size=(10, )))
print(str)
print(np.random.randint(10, 99, size=(3,4)))
print(str)
print(np.random.randint(10, 99, size=[3,4,5]))
################RESULT###########################
[98 19 26 27 18]
---------------------------------------
[11 43 83 76 51 97 92 13 22 97]
---------------------------------------
[[55 44 77 53]
[21 60 47 70]
[69 83 35 85]]
---------------------------------------
[[[40 11 84 88 63]
[67 29 39 73 35]
[43 44 23 94 32]
[13 41 25 61 62]]
[[34 59 30 97 58]
[59 23 92 56 51]
[84 94 94 49 67]
[65 63 41 97 73]]
[[70 79 15 47 23]
[97 34 92 18 93]
[31 14 25 10 64]
[36 83 89 17 62]]]
(6) empty()
print(np.empty([2, 3]),np.empty([2, 3]).dtype,sep='\n')
############################RESULT###########################################
[[6.23042070e-307 4.22795269e-307 9.34611148e-307]
[2.22518251e-306 1.33511969e-306 8.01097889e-307]]
float64