学无先后,达者为师

网站首页 编程语言 正文

详解python 一维、二维列表的初始化问题_python

作者:m0_46483236   更新时间: 2022-08-18 编程语言

一维列表的初始化:

初始一个长度为5的列表

方式1:

a = [0]*5
# [0, 0, 0, 0, 0]

方式2:

a = [0 for _ in range(5)]
# [0, 0, 0, 0, 0]

二维列表的初始化:

初始一个2*5的列表:

方式1:

b = [[0]*5 for _ in range(2)]
# [[0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]

方式2:

b = [[0 for _ in range(5)] for _ in range(2)]
# [[0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]

注意:

下述方式是错误的,这相当于将[0]*5这个一维列表复制了2次,每当改变其中一个一维列表中的元素,剩余列表中的元素也会跟着改变。

b = [[0]*5]*2
# [[0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]
 
b[0][1] = 3 
# [[0, 3, 0, 0, 0], [0, 3, 0, 0, 0]]

原文链接:https://blog.csdn.net/m0_46483236/article/details/125469432

栏目分类
最近更新