精华内容
下载资源
问答
  • 2020-11-22 16:20:27

    创建一个m行,n列的二维列表:

    dp = [[0]*n for _ in range(m)]

    运行结果(n = 3, m = 4):

    [[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]

    注1:单下划线 _ 的含义

    用作临时的变量名称 (此处的用法)

    Python REPL中的一个特殊变量,它表示由解释器评估的最近一个表达式的结果。

    举例:

    >>> 27

    27

    >>>_27

    >>> _+5

    32

    >>>_32

    >>> {1:'a', 2:'b'}

    {1: 'a', 2: 'b'}>>>_

    {1: 'a', 2: 'b'}>>> _[3] = 'c'

    >>>_

    {1: 'a', 2: 'b', 3: 'c'}

    无意义的变量名称

    举例:

    car = ('red', 'auto', 12, 3812.4)>>> color, _, _, mileage = car

    此时我只需要car的颜色和里程。故另外两项可以用_代替

    注2:还有一种创建二维列表的方法:

    dp = [[0]*3]*4

    运行结果一致,不过这种方法用的是列表的引用,也就是在赋值的时候会出现以下问题

    >>> dp[0][1] = 1

    >>>dp

    [[0,1, 0], [0, 1, 0], [0, 1, 0], [0, 1, 0]]

    更多相关内容
  • python 创建List列表 lists = [[] for i in range(3)] # 创建的是多行三列的列表 for i in range(3): lists[0].append(i) for i in range(5): lists[1].append(i) for i in range(7): lists[2].append(i...
  • Python创建二维数组

    2020-12-25 10:38:18
    二维数组 二维数组本质上是以数组作为数组元素的数组,即“数组的数组”,类型说明符 ...一般Python创建二维数组的方法是使用列表解析的方法 列表解析将for循环和创建新元素的代码合并成一行,并自动附加新元素 创建
  • Python 创建一个列表

    万次阅读 2020-11-22 22:40:20
    Python 创建一个空列表 lis=[[] for i in range(5)] for i in range(5): lis.append([])

    Python 创建一个二维列表

    空二维列表

    lis=[[] for i in range(5)]
    
    for i in range(5):
    	lis.append([])
    

    在这里插入图片描述

    普通二维列表

    lis=[[i for i in range(5)] for i in range(5)]
    print(lis)
    
    tis=[]
    for i in range(5):
        tis.append([])
        for j in range(5):
            tis[i].append(j)
    print(tis)
    

    在这里插入图片描述

    二维列表填充后可以索引

    在这里插入图片描述

    展开全文
  • python如何创建二列表

    千次阅读 2020-12-04 20:34:34
    python创建二列表的方法:python创建二列表的两种方法方法一:使用numpy-zeros((10,10)),生成给定长度的二维列表。方法二:使用for 循环,规避浅拷贝python创建二列表可以通过循环的方式来创建,代码如下:...

    python如何创建二维列表?

    python创建二维列表的方法:

    python创建二维列表的两种方法

    方法一:

    使用numpy-zeros((10,10)),生成给定长度的二维列表。

    方法二:

    使用for 循环,规避浅拷贝

    python创建二维列表可以通过循环的方式来创建,代码如下:

    如此,就创建好了一个缺省值为0的10*10的二维列表,实现相同列表的方法还有b=[[0]*10]*10,而且判断 a==b 时,返回值为 True。但是通过此种方法建立的列表存在一定的问题,当我们令b[0][1]=1时,我们的初衷是仅仅改变列表中一项的值,但是实际却不是:

    我们发现整个列表的第二列均发生了改变,这是因为[[]]*10表示的是表示10个指向这个空列表元素的引用,是一种浅拷贝,因此修改任何一个元素都会改变整个列表,所以我们需要采取第三种方式来创建二维列表:

    当我们令c[0][1]=1时,仅仅改变列表中一项的值,符合我们创建二维列表的要求

    展开全文
  • 欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是《Python中二维列表的创建、访问、应用详解》。本知识点主要内容有:二维列表的概念、直接定义二维列表...在Python中,创建二列表有以下3种常用的方法: .

    欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是《Python二维列表的创建、访问、应用详解》。本知识点主要内容有:二维列表的概念、直接定义二维列表、使用嵌套的for循环创建二维列表、使用列表推导式创建二维列表、二维列表的访问、二维列表的应用。

     

    二维列表的概念:

    二维列表是将其他列表当做列表的元素放在一个列表当中,也就是列表的嵌套。

    站长在线温馨提示:二维列表是多维列表的基础,未来还会出现三维列表,四维列表等多维列表。

    在Python中,创建二维列表有以下3种常用的方法:

    1、直接定义二维列表。

    在Python中,二维列表就是包含列表的列表。即一个列表的每个元素又都是一个列表。

    在创建二维列表时,我们可以直接使用列表的语法格式,进行定义:

    listname = [[元素11,元素12,元素13,......,元素1n],
                [元素21,元素22,元素23,......,元素2n],
                ......,
                [元素n1,元素n2,元素n3,......,元素nn]]

    其中的相关参数说明如下:

    listname:表示要生成的列表名称。

    [元素11,元素12,元素13,......,元素1n]:表示二维列表的第1行(也是一个列表)。其中元素11代表第1行第1列,元素12代表第1行第2列,以此类推,直到元素1n代表第1行第n列。

    [元素21,元素22,元素23,......,元素2n]:表示二维列表的第2行(也是一个列表)。其中元素21代表第2行第1列,元素22代表第2行第2列,以此类推,直到元素2n代表第2行第n列。

    [元素n1,元素n2,元素n3,......,元素nn]:表示二维列表的第n行(也是一个列表)。其中元素n1代表第n行第一列,元素n2代表第n行第2列,以此类推,直到元素nn代表第n行第n列。

    例如,定义一个某中学9年级1班3位同学的语数英的成绩列表,代码如下:

    cj = [['名字','语文','数学','英语'],
          ['张三',88,98,95],
          ['李四',85,99,91],
          ['王五',86,88,89]]   
    print(cj)
    

    运行上面代码,创建的二维列表如下:

    [['名字', '语文', '数学', '英语'], ['张三', 88, 98, 95], ['李四', 85, 99, 91], ['王五', 86, 88, 89]]
    >>> 
    

    2、使用嵌套的for循环创建二维列表。

    在Python中,创建二维列表,可以使用嵌套的for循环来实现,如创建一个5行5列的二维列表,可以使用下面代码:

    s = []                  # 创建一个空列表
    for i in range(5):      # 创建一个5行的列表(行)
        s.append([])        # 在空的列表中添加空的列表
        for j in range(5):  # 循环每一行的每一个元素(列)
            s[i].append(j)  # 为内层列表添加元素
    print(s)                # 输出列表

    运行上面的代码,创建的二维列表如下:

    [[0, 1, 2, 3, 4], [0, 1, 2, 3, 4], [0, 1, 2, 3, 4], [0, 1, 2, 3, 4], [0, 1, 2, 3, 4]]
    >>> 
    

    3、使用列表推导式创建二维列表。

    我们刚刚在上一个知识点《在python中的列表推导式详解》学习过列表推导式。列表推导式就是可以快速生成一个列表,或者根据某个列表生成满足指定需求的列表。

    在这里我们也可以使用列表推导式来创建二维列表,并且是被推荐的方法,而且语法简单。

    比如使用列表推导式的方法创建一个5行5列的二维列表,代码如下:

    s = [[j for j in range(5)] for i in range(5)]
    print(s)

    执行上面代码,创建的二维列表结果如下:

    [[0, 1, 2, 3, 4], [0, 1, 2, 3, 4], [0, 1, 2, 3, 4], [0, 1, 2, 3, 4], [0, 1, 2, 3, 4]]
    >>> 
    

    4、二维列表的访问

    我们在创建好二维列表以后,可以通过下列语法,对列表元素的访问:

    listname[索引1][索引2]

    其中,相关的参数说明为:

    listname:表示列表的名称

    索引1:列表中的行。索引值从0开始,即第一行是索引为0。(索引也称为下标,索引1也称为下标1)

    索引2:列表中的列。索引值从0开始,即第一列是索引为0。(索引也称为下标,索引2也称为下标2)

    如,定义一个二维列表,访问他的第1行,第5列,可以使用下面代码:listname[0,4]

    s = [[j for j in range(5)] for i in range(5)]      # 定义一个5行5列的二维列表
    print("5行5列的列表为:",s)                        # 输出二维列表
    print("其中第1行,第5列为:",s[0][4])              # 输出第1行,第5列的元素
    

    运行结果为:

    5行5列的列表为: [[0, 1, 2, 3, 4], [0, 1, 2, 3, 4], [0, 1, 2, 3, 4], [0, 1, 2, 3, 4], [0, 1, 2, 3, 4]]
    其中第1行,第5列为: 4
    >>> 
    

    5、二维列表的应用

    使用二维列表输出不同版式的古诗《静夜思》

    -- 横版 --

    床前明月光

    疑是地上霜

    举头望明月

    低头思故乡

    -- 竖版 --

    低举疑床

    头头是前

    思望地明

    故明上月

    乡月霜光

    站长在线温馨提醒:横版是从左往右读,竖版是从右往左读的。

    我们在IDLE中新建一个文件,在该文件中,定义4个字符串为《静夜思》的诗句,再定义一个二维列表,使用嵌套的for循环,将古诗以横版输出,再将二维列表进行逆序排列,最后使用嵌套的for循环,将古诗以竖版输出,代码如下:

    str1 = '床前明月光'
    str2 = '疑是地上霜'
    str3 = '举头望明月'
    str4 = '低头思故乡'
    verse = [list(str1), list(str2), list(str3), list(str4)]   # 定义一个二维列表
    print('\n-- 横版 --\n')
    for i in range(4):                                         # 循环古诗的每一行
        for j in range(5):                                     # 循环每一行的每个字(列)
            if j == 4:                                         # 如果是一行中的最后一个字
                print(verse[i][j])                             # 换行输出
            else:
                print(verse[i][j], end='')                     # 不换行输出
    
    verse.reverse()                                            # 对列表进行逆序排列
    print('\n-- 竖版 --\n')
    for i in range(5):                                         # 循环每一行的每个字(列)
        for j in range(4):                                     # 循环新逆序排列后的第一行
            if j == 3:                                         # 如果是最后一行
                print(verse[j][i])                             # 换行输出
            else:
                print(verse[j][i], end='')                     # 不换行输出
    
    

    运行结果如下:

    -- 横版 --
    
    床前明月光
    疑是地上霜
    举头望明月
    低头思故乡
    
    -- 竖版 --
    
    低举疑床
    头头是前
    思望地明
    故明上月
    乡月霜光
    >>> 
    

    原理解析:

    5.1、先将古诗的每一行的字符串,使用list()函数转换成列表。列表代码如下:

    [['床','前','明','月','光'],
     ['疑','是','地','上','霜'],
     ['举','头','望','明','月'],
     ['低','头','思','故','乡']]

    5.2、列表对象的reverse()方法用于对列表进行逆向排序,将列表的最后一个移到第一个,倒数第二个移到第二个,以此类推。代码如下:

    [['低', '头', '思', '故', '乡'],
     ['举', '头', '望', '明', '月'],
     ['疑', '是', '地', '上', '霜'],
     ['床', '前', '明', '月', '光']]
    

    5.3、横版是按行打印,竖版却是按列打印,按列打印如下:

    低举疑床
    头头是前
    思望地明
    故名上月
    乡月霜光
    

    看见了吧,我们把读不通顺的,按列打印的“低举疑床,头头是前,思望地明,故名上月,乡月霜光”就正是我们要的按竖排打印的诗。竖排的写法是从右往左写的。读也从右边读起,就正是我们的想要的诗了。

    到此为止,本文主题《python中二维列表的创建、访问、应用详解》中的二维列表的概念、直接定义二维列表、使用嵌套的for循环创建二维列表、使用列表推导式创建二维列表、二维列表的访问、二维列表的应用。就到此讲解完毕了,还有不懂的可以留言哦!

    展开全文
  • Python创建二维数组

    千次阅读 2022-04-05 19:20:55
    文章目录前言实际操作一维数组维数组总结 前言 Python并没有内置的数组类型,只有tuple,list,dict,set等内置类型。所以只能通过list模拟数组。 实际操作 一维数组 a = [i + 1 for i in range(10)] # a = [1, 2,...
  • 正确的方式 通过嵌套for循环,一个个添加0 n = [] for i in range(2): n.append([]) ...创建一个三个0的一数组,将该数组复制两倍 m = [0]*3 mm = [m]*2 mm[0][0] = 2 print(mm) 输出[[2, 0, 0...
  • Python 创建二列表list

    万次阅读 多人点赞 2018-12-26 10:08:49
    Python 创建二列表list 1.正确使用方式: 2.误用方式: 原因:matrix = [array] * 3操作中,只是创建3个指向array的引用,所以一旦array改变,matrix中3个list也会随之改变。    ...
  • Python 列表

    千次阅读 2021-12-26 13:15:50
    二、创建二列表 1、追加一维列标来生成二维列标 生成一个4行3列的二维列表 row1 = [3, 4, 5] row2 = [1, 5, 9] row3 = [2, 5, 8] row4 = [7, 8, 9] matrix = [] matrix.append(row1) matrix.append(row2) matrix...
  • python二列表

    千次阅读 2020-11-30 11:14:07
    方法一:使用 lambda 关键词辅助对列表进行排序,lambda的使用方法参考https:blog.csdn.netzjuxslarticledetails79437563假设有一个学生列表存储了学号,姓名,年龄信息:students = ,]按学号顺序排序:sorted...
  • Python创建二维数组的正确姿势

    千次阅读 2020-12-04 20:33:44
    ↑↑↑点击上方“蓝字”...List (列表)是 Python 中最基本的数据结构。在用法上,它有点类似数组,因为每个列表都有一个下标,下标从 0 开始。因此,我们可以使用 list[1] 来获取下标对应的值。如果我们深入下列表的...
  • Python初始化列表

    2021-12-04 18:33:23
    x = [[0 for i in range(10)] for j in range(20)] print(x[15][8]) 初始化20行10列。值都为0,也可以是任意表达式,比如2*pi*i/100
  • #python二列表(有图有代码,简洁清晰明了!)

    万次阅读 多人点赞 2020-11-24 19:46:48
    python创建二列表有以下3种常用的方法 1、直接定义二维列表 例如: listname=[[元素1],[元素2],[元素3]......[元素n]] listname: 表示生成列表名称 【元素1】: 表示二维列表的第一行,也是一个列表,其中的...
  • python创建全为0的列表遇到的坑

    万次阅读 2020-12-09 18:39:27
    本来想着简单点,用列表乘法 m = n = 3 test = [[0] * m] * n print(test)         输出也看了一下,没啥问题 [[0, 0, 0], [0, 0, 0], [0, 0, 0]] m = n = 3 test = [[0] * m] * n print...
  • 列表 - Python教程 - C语言网

    千次阅读 2020-11-24 02:39:26
    有接触过C或C++的可能了解数组这个概念,在Python中数组存在于第三方库中,因此在不安装第三方插件的前提下我们想要在Python中使用数组方法,就要采用列表这个方法。实际上列表中的元素可以是任何数据类型,我们...
  • python如何创建二维数组

    千次阅读 2021-12-12 16:50:54
    关于python中的维数组,主要有list和numpy.array两种。好吧,其实还有matrices,但它必须是2维的,而numpy arrays (ndarrays) 可以是多维的。 两者可以相互转化。下边是两者区别 数组list >>import numpy...
  • Python创建一个元素都为0的列表实例

    千次阅读 2020-11-25 20:48:37
    Python创建一个元素都为0的列表实例实现创建一个元素都为0的列表:l=10lis=[0]*llis输出结果:[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]以上这篇Python创建一个元素都为0的列表实例就是小编分享给大家的全部内容了,希望能给...
  • 今天的学习内容是python中的列表的相关内容。一.创建列表1.创建一个普通列表>>> tabulation1 = ['大圣','天蓬','卷帘']>>> tabulation1['大圣', '天蓬', '卷帘']>>> tabulation2 = [72,...
  • Python中用NumPy创建二维数组

    千次阅读 2020-12-24 15:52:43
    文章目录前言1 一维数组2 维数组3 维数组的分片4 数组维度的操作5 数组的组合与分隔5.1 水平组合5.2 垂直组合5.3 水平分隔5.4 垂直分隔6 数组转列表7 数组的存储和读取及分隔符7.1数组的存储7.2数组的读取总结...
  • Python通过键盘输入列表

    千次阅读 2022-03-07 21:16:48
    Python通过键盘输入列表 前两天刷笔试题在用python进行列表输入时遇到问题后进行了总结。 如输入一个nn的矩阵存储到列表,第一行表示输入参数n,下面为矩阵参数,以33为例: 3 1,2,3 4,5,6 7,8,9 1. 以...
  • 创建数值列表需要存储一组数字的原因有很多,例如,在游戏中,需要跟踪每个角色的位置,还可能需要跟踪玩家的几个最高得分。在数据可视化中,处理的几乎都是由数字(如温度、距离、人口数量、经度和纬度等)组成的集合...
  • 下面小编就为大家分享一篇Python的多维空数组赋值方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • python 列表(数组)赋值问题

    万次阅读 多人点赞 2018-09-11 17:36:21
    当我们使用arr = [[0]*5]*5 初始化一个维数组时,会得到一个5*5的数组, In [1]: arr = [[0]*5]*5 In [2]: arr Out[2]: [[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0,...
  • #一维列表创建: a = [None] * n # 创建一个初值为None的长度为n的列表a,None只是一种...# 列表创建: a = [[0 for col in range(m)] for row in range(n)] # 创建一个n*m的维矩阵a,每个初值都是0 ...
  • python 去除维数组/列表中的重复行方法之前提到去除一维数组中的重复元素用unique()函数,如果要去除维数组中的重复行该怎么操作呢?import numpy as nparr = np.array([[1, 2],[3, 4],[5, 6],[7, 8],[3, 4]...
  • Python 用NumPy创建二维数组的案例

    千次阅读 2021-04-27 03:15:01
    今天来学习一个新的内容—NumPy的使用1 一维数组例:用普通方法生成一维数组num = [0 for i in range(1,5)] # 创建一维数组print(num) # 打印数组print("-"*50) # 分割线num[2]=6 # 将第三个元素修改6print(num) ...
  • Python二维数组创建

    万次阅读 多人点赞 2018-07-12 01:22:25
    Python二维数组创建 创建方法: 1. 直接创建 2. 列表生成 3. numpy创建 遇到的问题: a = [[]]*3 a[0].append(1) a[1].append(2) a[2].append(3) print(a) 输出为: [[1, 2, 3], [1, 2, 3], [1, 2, 3]...
  • 列表list:方括号[ ]PS:先了解序列是Python中最基本的数据结构,Python有6个序列的内置类型,但最常见的是列表和元组。序列都可以进行的操作包括索引,切片,加,乘,检查成员。列表是最常用的Python数据类型list=[...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 150,794
精华内容 60,317
关键字:

python创建二位列表