使用python中遇到的一些有意思的问题

1.创建一个两维或者多维list的两种方法的差异

'''

在此我们创建两个两维的list:a,b

'''

n = 6

a = [[] for _ in range(n)]

b = [[]]*n

print('a',a)

print('b',b)

print(a==b)

结果:

总体来看,这样的两种方式是相同的,然而!!!    我们在以上代码中添加几行代码,大家再看一下结果。

a[0].append(1)

b[0].append(1)

print('a',a)

print('b',b)

print(a==b)

结果:

没错,都是通过选定第0维,向第1维中追加“1”,然而,第一种for方法,可以准确在这一位置追加,第二种方法却是在第1维中都追加了1。其中的缘由未能明白,只希望记住这两种方法的区别,避免以后在工程中出错。

环境:python3.5.4                (2018.12.05下午记)

你可能感兴趣的:(使用python中遇到的一些有意思的问题)