当前位置: 首页 > 图灵资讯 > 行业资讯> python怎么初始化数组

python怎么初始化数组

发布时间:2025-05-08 10:41:52

由于图中x轴和y轴的数据通常是数组格式的数据,因此首先总结了如何初始化数组:

(1)list得到数组

#list对象通过array函数传输
L=[1,2,3,4,5]
a=np.array(L)
#如果list传输多层嵌套,将创建多维数组
b=np.array([1,2,3,4],[5,6,7,8],[9,10,11,12]]
#创建dtype参数时,可以指定元素类型
d=np.array([1,2,3,4],[5,6,7,8],[9,10,11,12],dtype=np.float)
#如果元素类型发生变化,astype可以安全转换
f=d.astype(np.int)

(2)使用arange

#类似于Python的range,arange也不包括最终值;但是arange可以生成浮点类型,而range只能是整数类型
#1为开始值,10为终止值(不包括),0.5为步长,0.5为步长
a=np.arange(1,10,0.5)

相关推荐:Python基础教程

(3)使用ones、zeros、empty

#np.ones(shape,dtype),所有生成元素均为1(默认浮点型)的数组
#shape可以为一个整数获得一个一维数组,也可以为(整数1、整数2)的格式获得二维数组,也可以获得多维数组
a=np.ones((3,3),dtype=np.int32)
print("a:\n",a)

#np.zeros(shape,dtype),所有生成元素均为0(默认浮点型)的数组
#用法与np.noes()一样
b=np.zeros((3,3),dtype=np.int32)
print("b:\n",b)

#np.empty(shape,dtype),生成元素是随机数(默认浮点类型)的数组
#用法与np.ones()一样
c=np.empty((3,4),dtype=np.int32)
print("c:\n",c)

#np.ones()、np.zeros()、np.empty()复制结构相同的数组有以下形式,但可以选择数据类型
np.ones_like(array,dtype=)
np.zeros_like(array,dtype=)
np.empty_like(array,dtype=)

(4)等差数列

#linspace函数通过指定起始值、终止值和元素数创建等差数组,元素之间等步长
#默认情况下,endpoint表示是否包含终止值
b=np.linspace(1,10,10,endpoint=True)

(5)等比数列

#创建指定起始值、终止值、元素数量和基数的等比列
#base表示基数,在1到4之间创建了10个等比数列
d=np.logspace(1,2,10,endpoint=True,base=2)
#基数为10,下公式创建了10到100之间的等比数
d=np.logspace(1,2,10,endpoint=True,base=10)

(6)随机数

rand()

#返回服从“0~1”均匀分布的随机数,也可返回服从“0~1”均匀分布的随机数组。
#np.random.rand(d0,d1,..,dn)
#在[0,1)内返回一个随机值
In[15]:np.random.rand()
Out[15]:0.9027797355532956
#返回3x3数组,数组元素在[0,1)内
In[16]:np.random.rand(3,3)
Out[16]:
array([0.47507608,0.6425621,0.926529],
[0.95028412,0.18413813,0.9187723],
[0.89995217,0.42356103,0.81312942]
In[17]:np.random.rand(3,3,3)

#返回3x3x3数组
Out[17]:
array([0.30295904,0.76346848,0.3125168],
[0.77845927,0.75020602,0.8470385],
[0.232971,0.6596263,0.9329286],
[0.24575304,0.9019242,0.62390674]
[0.43663215,0.93187574,0.75302239],
[0.62658734,0.01582182,0.6478944]
[0.22152418,0.51664503,0.419781],
[0.472318,0.192485,0.299988],
[0.166451,0.6671804,0.3983648]]

randn()

#用法与rand(d0,d1,产生标准正态分布的随机数或随机数组,dn)方法一样
np.random.randn(d0,d1,..,dn)

randint()

#它可以生成随机数或多维随机数组
#np.random.randint(low,high=None,size=None,dtype=)
#[0,4)随机数之间的随机数
In[7]:np.random.randint(4)
Out[7]:1
#[0,4)之间的一维数组
In[8]:np.random.randint(4,size=4)
Out[8]:array(2,2,2,0]
#一维数组之间的[4,10)
In[9]:np.random.randint(4,10,size=6)
Out[9]:array(7、9、7、8、6、9)
#2x2数组之间的[4,10)
np.random.randint(4,10,size=(2,2),dtype='int32')
Out[10]:
array([7,4],[6,9]])

uniform()

#产生[low,high)随机数或随机数组均匀分布,low默认为0.0,high默认为1.0
np.random.uniform(low=0.0,high=1.0,size=None)

normal()

#均值为loc,方差为scale服从正太分布的随机数或随机数组,loc默认为0,scale默认为1
np.random.normal(loc=0.0,scale=1.0,size=None)

相关文章

如何让vim支持python3

如何让vim支持python3

2025-09-12
python2.7和3.6区别有哪些

python2.7和3.6区别有哪些

2025-09-12
python3有serial库吗

python3有serial库吗

2025-09-12
python中w、r表示什么意思

python中w、r表示什么意思

2025-09-12
python中如何把list变成字符串

python中如何把list变成字符串

2025-09-12
python命名空间是什么

python命名空间是什么

2025-09-12