二维列表中的操作
今天学习列表时,发现了一个与之前学习C语言不一样的地方。原先我以为列表就等同于C语言中的数组。但在学习时,发现了一个与C语言规则冲突的实例
首先我们创建一个3*3的二维列表
xy_list = [ [0] * 3 ] * 3
for i in xy_list:
print(i)
得到的结果是这样的:
#[[0,0,0],
# [0,0,0],
# [0,0,0]]
当我们想操作 xy_list[0] [0] =1
后 再打印,会发现:
#[1, 0, 0]
#[1, 0, 0]
#[1, 0, 0]
每一行的第一列都被赋值成为了1,这个结果和我们在C语言中学习的二维数组有区别。在C语言中明