Python怎么定义数组,Python如何定义数组
原标题:python如何定义数组?
Python没有数组的数据结构,但是列表类似于数组。示例:
a=[ 0,1,2 ].此时,a[0]=0,a[1]=1,a[[2]=2,但这就产生了一个问题,如果数组A想被定义为0到999该怎么办。在这种情况下,可以在a=范围(0,1000)内实现。或者省略为a=range(1000)。如果要定义一个长度为1000的,初始值都是0,a=[0forxinrange] 0,1000)]
二维数组的定义如下。
直接定义a=[1,1],[1,1]。这里定义了一个2*2的二维数组,初始为0。
a=[0 forxinrange(10)]foryinrange(10)]是间接定义的,这里定义了一个初始值为10*10的二维数组。
还有一种更简单的词义二维排列方法:
B=[[0]*10]*10,定义一个10*10的二维数组,初始值为0。
与a=[0 forxinrange(10)]foryinrange(10)]相比,print a==b的结果为真。
但是,如果用B的定义方法代替A,以前正常运行的程序也会出错。经过仔细分析,发现了不同之处。
如果a[0][0]=1,则只有a[0][0]为1,其他都为0。
在b[0][0]=1的情况下,a[0][0],a[1][0]直到a [9,0]都是1。
这么大的数组里十个小的一维数据都指向同一个引用,也就是同一个地址。
所以b=[[0]*10]*10不符合我们通常的二维排列。
原文:3359 www.py.cn/FAQ/python/13135.html回搜狐看更多
责任编辑:
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。