精华内容
下载资源
问答
  • python 定义二维数组

    2017-09-07 21:13:00
    1. myList = [([0] * n) for i in range(m)],n是列,m是行 >>> array=[([0]*3) for i in range(4)] >>> for i in range(4): ... for j in range(3): ... print array[i][j], ......

    1. myList = [([0] * n) for i in range(m)],n是列,m是行

    >>> array=[([0]*3) for i in range(4)]
    >>> for i in range(4):
    ...     for j in range(3):
    ...             print array[i][j],
    ...     print "\n"
    ... 
    0 0 0 
    
    0 0 0 
    
    0 0 0 
    
    0 0 0 
    
    >>> array[0][1]=1
    >>> for i in range(4):
    ...     for j in range(3):
    ...             print array[i][j],
    ...     print "\n"
    ... 
    0 1 0 
    
    0 0 0 
    
    0 0 0 
    
    0 0 0 
    
    >>> 

    2.array = [ [ 0 for i in range(n)] for i in range(m)],n是列,m是行

    >>> array=[[0 for i in range(3)] for i in range(4)]
    >>> for i in range(4):
    ...     for j in range(3):
    ...             print array[i][j],
    ...     print "\n"
    ... 
    0 0 0 
    
    0 0 0 
    
    0 0 0 
    
    0 0 0 
    
    >>> array[0][1]=1
    >>> for i in range(4):
    ...     for j in range(3):
    ...             print array[i][j],
    ...     print "\n"
    ... 
    0 1 0 
    
    0 0 0 
    
    0 0 0 
    
    0 0 0 
    
    >>> 

    转载于:https://www.cnblogs.com/nyist-xsk/p/7491900.html

    展开全文
  • python定义二维数组 思维碎片在python定义二维数组发表于 2012/11/22 由 liam2一次偶然的机会,发现python中list非常有意思。先看一段代码[py] array = [0, 0, 0] matrix = [array*3] p...

    思维碎片

    在python中定义二维数组

    一次偶然的机会,发现python中list非常有意思。

    先看一段代码

    [py]
    array = [0, 0, 0]
    matrix = [array*3]
    print matrix
    ## [[0,0,0,0,0,0,0,0,0]][/py]

    这段代码其实没有新建一个二维数组

    再看一段代码

    [py]
    array = [0, 0, 0]
    matrix = [array] * 3
    print matrix
    ## [[0, 0, 0], [0, 0, 0], [0, 0, 0]][/py]

    咋一看这段代码应该创建一个二维数组了

    测试一下

    [py]
    matrix[0][1] = 1
    print matrix
    ## [[0, 1, 0], [0, 1, 0], [0, 1, 0]][/py]

    照理matrix[0][1]修改的应该只是二维数组中的一个元素,但是测试结果表明,修改的是每个List的第二个元素。
    有问题看文档,然后我找到了The Python Standard Library
    其中5.6. Sequence Types是这样描述的:

    Note also that the copies are shallow; nested structures are not copied. This often haunts new Python programmers; consider:
    >>> lists = [[]] * 3
    >>> lists
    [[], [], []]
    >>> lists[0].append(3)
    >>> lists
    [[3], [3], [3]]

    What has happened is that [[]] is a one-element list containing an empty list, so all three elements of [[]] * 3 are (pointers to) this single empty list. Modifying any of the elements of lists modifies this single list. You can create a list of different lists this way:

    >>>
    >>> lists = [[] for i in range(3)]
    >>> lists[0].append(3)
    >>> lists[1].append(5)
    >>> lists[2].append(7)
    >>> lists
    [[3], [5], [7]]
    也就是说matrix = [array] * 3操作中,只是创建3个指向array的引用,所以一旦array改变,matrix中3个list也会随之改变。

    那如何才能在python中创建一个二维数组呢?
    例如创建一个3*3的数组
    方法1 直接定义

    [py]matrix = [[0, 0, 0], [0, 0, 0], [0, 0, 0]][/py]

    方法2 间接定义

    [py]matrix = [[0 for i in range(3)] for i in range(3)][/py]

    附:
    我的测试代码

    参考:
    python的二维数组操作
    stackoverflow

    posted on 2013-01-16 00:01 lexus 阅读(...) 评论(...) 编辑 收藏

    转载于:https://www.cnblogs.com/lexus/archive/2013/01/16/2862078.html

    展开全文
  • 最近在使用python二维数组时,发现了一个问题: 使用arr = [[0] * n] * n这个形式时,发现修改数组里的一个数据时,会同时改变一列的数据,通过搜索发现是是引用机制的问题,原理解析:二维数组引用解释。 那么...

    最近在使用python的二维数组时,发现了一个问题:
    使用arr = [[0] * n] * n这个形式时,发现修改数组里的一个数据时,会同时改变一列的数据,通过搜索发现是是引用机制的问题,原理解析:二维数组引用解释


    那么我们如何定义一个可以修改数据的二维数组呢?
    可以使用这种形式:
    arr = [[0] * n for i in range(n)]

    注:[0] * n 为一维数组,for i in range(n)为将该一维数组做n次循环来实现二维数组

    展开全文
  • Python实现二维数组

    万次阅读 2018-07-16 14:14:13
    1、二维数组 二维数组使用简便,可以有很多简洁的操作,实现多元的要求。2、如何实现 一、直接定义matrix = [[0, 0, 0], [0, 0, 0], [0, 0, 0]] matrix[2][2] = 9 print(matrix) 输出:二、间接定义matrix = [[0 for...

    欢迎关注公众号——《数据三分钟》

    一线大厂的师兄师姐结合自己的工作实践,将数据知识浅显道来,每天三分钟,助你成为数据达人。还有面试指导和内推机会。

     

    1、二维数组

          二维数组使用简便,可以有很多简洁的操作,实现多元的要求。

     

    2、如何实现

     

         一、直接定义

    matrix = [[0, 0, 0], [0, 0, 0], [0, 0, 0]]
    matrix[2][2] = 9
    print(matrix)

     

                输出:

     

          二、间接定义

    matrix = [[0 for i in range(3)] for i in range(3)]
    matrix[2][2] = 9
    print(matrix)
    输出
    
    展开全文
  • Python -二维数组定义

    万次阅读 2019-07-05 18:57:08
    看上去是创建了二维数组,但是只是创建N个指向a的引用,所以一旦a改变,arrays中N个list也会随之改变 eg: a=[] N=3 arrays=[a]*3 arrays[0].append(1)#看上去只为第一个list添加整数1,实际上--- print(arrays...
  • #Python# 二维数组定义、使用的几种方法通常的困扰1、先介绍最简单的一种方式2、再介绍最常见的一种方式3、最后介绍最暴力直观的一种方式 通常的困扰 之前对Python里面创建、使用二维数组也很懵,于是也上网查了...
  • 如A = np.array([[1,2,3,4],[5,6,7,8],[11,6,7,8]]),我如何给这个二维数组定义列名
  • python定义二维数组

    2020-03-26 13:39:29
    最长回文子串,二维数组这么定义的: dp = [[False]*size]*size 然后后面发现,更改数据的时候会一列一起被修改 即原文所说的第一种情况 正确的方法是 dp = [[ False for _ in range(size)] for _ ...
  • 背景 前几天,有位同学问我如下的问题:temp[0][0]修改后,为什么temp[1][0]...在 C# 语言中有直接定义二维数组的语法,比如int[,] a = new int[3][4];或者int[][] a = new int[3][]。 而 Python 语言中如果想使用...
  • 如何在Python定义二维数组

    千次阅读 2019-12-31 13:01:45
    我想定义一个没有初始化长度的二维数组,如下所示: Matrix = [][] 但这不起作用... 我已经尝试过下面的代码,但是它也是错误的: Matrix = [5][5]
  • 自学深度学习重拾python,发现自学打的基础就是不行,比如python定义二维数组的问题,很怪,也很有意思。 找到了一篇大佬的文章:https://www.cnblogs.com/woshare/p/5823303.html ,茅塞顿开,本文章主要在大佬...
  • python创建二维数组

    2018-04-26 20:17:14
    初学python,自己网上看了点语法篇,今天上算法课练习了螺旋矩阵,课后想用python的方法实现一边,开头就卡住了,既然是矩阵就要用到二维数组,c++和Java的定义方法可以直接一个int matrix[100][100]实现矩阵的定义...
  • python定义二维数组   发表于 http://liamchzh.0fees.net/?p=234&i=1 一次偶然的机会,发现python中list非常有意思。 先看一段代码 [py] array = [0, 0, 0] matrix = [array*3] print matrix ## [[0,...
  • Python定义二维数组

    2016-10-26 10:31:00
    2019独角兽企业重金招聘Python工程师标准>>> ...
  • python定义二数组

    2019-08-20 17:26:39
    最近卡在了定义二维数组上,研究后发现有以下方法: 第一种方法 list = [[0 for _ in range(n)] for i in range(m)] 最终定义为list[m][n]=0 第二种方法: list for i in range(n): list.append([]) for i in range...
  • python实现二维数组顺/逆时针打印

    千次阅读 2020-08-28 10:04:29
    python实现二维数组顺/逆时针打印 需求 对于一个矩阵,请设计一个算法从左上角(mat[0][0])开始,顺时针打印矩阵元素。话不多说,直接上思路和代码! 思路和关键算法 这个问题不熟悉矩阵的同学可能会想着定义各个方向...
  • python二维数组定义与操作

    千次阅读 2013-03-19 20:38:11
    需要在程序中使用二维数组,网上找到一种这样的用法: ? 1 2 3 4 5 6 #创建一个宽度为3,高度为4的数组 #[[0,0,0], # [0,0,0], # [0,0,0], # [0,0,0]]...
  • python二维数组赋值问题

    千次阅读 2020-06-23 19:33:49
    通过以下方式,定义二维list,当改变一个元素值时,会发现所有行中对应位置的值都被改变 # 定义一个3*4的二维list d_list = [['0']*4]*3 # 注意行和列对应位置 print(d_list) # 改变一个元素时 d_list[2][1] = 'w...
  • Python中创建二维数组

    2020-12-25 10:38:18
    Python中的列表list可以当做一维数组使用,但是没有直接的定义使用二维数组。如果直接使用a = [][]会产生SyntaxError: invalid syntax语法不正确错误。 一般Python中创建二维数组的方法是使用列表解析的方法 列表...
  • array = [0, 0, 0] matrix = [array] * 3 ...咋一看这段代码应该创建一个二维数组了 测试一下 matrix[0][1] = 1 print matrix [[0, 1, 0], [0, 1, 0], [0, 1, 0]][/py] 照理matrix[0][1]修改的应该只是...

空空如也

空空如也

1 2 3 4 5 ... 19
收藏数 365
精华内容 146
关键字:

python定义二维数组

python 订阅