欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python中列表乘法需注意的问题/

程序员文章站 2022-06-07 15:09:14
前几天看到一个关于Python的面试题 lst = [1, 2, [3]] lst1 = lst * 2 # [1, 2, [3], 1, 2, [3]] lst1[2].append(4) # [3, 4] print(lst1) 开始时,就处理错了。最终上机测试发现,乘法貌似是内存地址的拷贝。 ......

前几天看到一个关于python的面试题

lst = [1, 2, [3]]

lst1 = lst * 2  #  [1, 2, [3], 1, 2, [3]]

lst1[2].append(4)  # [3, 4]

print(lst1)

开始时,就处理错了。最终上机测试发现,乘法貌似是内存地址的拷贝。

也就是说 lst1[2] 和 lst1[5] 都指向同一个对象,最终lst1结果如下:

print(lst1)   #  [1, 2, [3, 4], 1, 2, [3, 4]]

Python中列表乘法需注意的问题/