本文实例讲述了Python使用numpy模块创建数组操作。分享给大家供大家参考,具体如下:
创建数组
创建ndarray
创建数组最简单的方法就是使用array函数。它接收一切序列型的对象(包括其他数组),然后产生一个新的含有传入数据的Numpy数组。
array函数创建数组
import numpy as np
ndarray1 = np.array([1, 2, 3, 4])
ndarray2 = np.array(list('abcdefg'))
ndarray3 = np.array([[11, 22, 33, 44], [10, 20, 30, 40]])
zeros和zeros_like创建数组
用于创建数组,数组元素默认值是0. 注意:zeros_linke函数只是根据传入的ndarray数组的shape来创建所有元素为0的数组,并不是拷贝源数组中的数据.
ndarray4 = np.zeros(10)
ndarray5 = np.zeros((3, 3))
ndarray6 = np.zeros_like(ndarray5) # 按照 ndarray5 的shape创建数组
# 打印数组元素类型
print("以下为数组类型:")
print('ndarray4:', type(ndarray4))
print('ndarray5:', type(ndarray5))
print('ndarray6:', type(ndarray6))
print("-------------")
print("以下为数组元素类型:")
print('ndarray4:', ndarray4.dtype)
print('ndarray5:', ndarray5.dtype)
print('ndarray6:', ndarray6.dtype)
print("-------------")
print("以下为数组形状:")
print('ndarray4:', ndarray4.shape)
print('ndarray5:', ndarray5.shape)
print('ndarray6:', ndarray6.shape)
ones和ones_like创建数组
用于创建所有元素都为1的数组.ones_like用法同zeros_like用法
#创建数组,元素默认值是0
ndarray7 = np.ones(10)
ndarray8 = np.ones((3, 3))
#修改元素的值
ndarray8[0][1] = 999
ndarray9 = np.ones_like(ndarray5) # 按照 ndarray5 的shape创建数组
empty和empty_like创建数组
用于创建空数组,空数据中的值并不为0,而是未初始化的随机值.
ndarray10 = np.empty(5)
ndarray11 = np.empty((2, 3))
ndarray12 = np.empty_like(ndarray11)
arange创建数组
arange函数是python内置函数range函数的数组版本.
ndarray13 = np.arange(10) #产生0-9共10个元素
ndarray14 = np.arange(10, 20) #产生从10-19共10个元素
ndarray15 = np.arange(10, 20, 2) #产生10 12 14 16 18, 2为step 间隔为2
print('ndarray14的形状:', ndarray14.shape) #ndarray15的长度
ndarray14.reshape((2, 5)) #将其形状改变为(2, 5) 分2部分 每份5个
eys创建对角矩阵数组
该函数用于创建一个N*N的矩阵,对角线为1,其余为0.
ndarray16 = np.eye(5)
希望本文所述对大家Python程序设计有所帮助。