python定义一维数组,Python建立二维数组

  python定义一维数组,Python建立二维数组

  Python定义序列的方法:1。直接定义[a=[1,1],[1,1];2.间接定义[a=[0 forxinrange(10)10];3.[b=[[0]*10]*10]初始零的二维数组。7fQ少儿编程网-https://www.pxcodes.com

  7fQ少儿编程网-https://www.pxcodes.com

  本教程的系统要求:windows7系统,Python版,戴尔G3电脑。7fQ少儿编程网-https://www.pxcodes.com

  python中定义数组的方法:7fQ少儿编程网-https://www.pxcodes.com

  Python没有数组的数据结构,但是列表和数组非常相似。比如7fQ少儿编程网-https://www.pxcodes.com

  a=[ 0,1,2 ].此时,a[0]=0,a[1]=1,a[[2]=2,但这就产生了一个问题,如果数组A想被定义为0到999该怎么办。在这种情况下,可以在a=范围(0,1000)内实现。或者省略为a=range(1000)。如果要定义一个长度为1000的a,初始值都是0,a=[0forxinrange] 1000) ]7fQ少儿编程网-https://www.pxcodes.com

  下面是二维数组的定义。7fQ少儿编程网-https://www.pxcodes.com

  直接定义a=[1,1],[1,1]。这里定义了一个2*2的二维数组,初始为0。7fQ少儿编程网-https://www.pxcodes.com

  a=[0 forxinrange(10)]foryinrange(10)]是间接定义的,这里定义了一个初始值为10*10的二维数组。7fQ少儿编程网-https://www.pxcodes.com

  还有更简单的词义二维排列法。7fQ少儿编程网-https://www.pxcodes.com

  B=[[0]*10]*10,定义一个10*10的二维数组,初始值为0。7fQ少儿编程网-https://www.pxcodes.com

  与a=[0 forxinrange(10)]foryinrange(10)]相比,print a==b的结果为真。7fQ少儿编程网-https://www.pxcodes.com

  但是用B代替A的定义方法后,以前正常运行的程序也是错误的。仔细分析发现,7fQ少儿编程网-https://www.pxcodes.coma[0][0]=1时,只有a[0][0]是1,其他都是0。7fQ少儿编程网-https://www.pxcodes.com

  在b[0][0]=1的情况下,a[0][0],a[1][0]直到a [9,0]都是1。7fQ少儿编程网-https://www.pxcodes.com

  这么大的数组里十个小的一维数据都指向同一个引用,也就是同一个地址。7fQ少儿编程网-https://www.pxcodes.com

  所以b=[[0]*10]*10不符合我们通常的二维排列。7fQ少儿编程网-3359www.pxcodes.com相关免费学习推荐:python视频教程7fQ少儿编程网-3359 www.pXcodes.com

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: