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

一维列表的初始化:

初始一个长度为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]]

到此这篇关于python (一维、二维)列表的初始化的文章就介绍到这了,更多相关python列表的初始化内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(详解python 一维、二维列表的初始化问题)