# 不能循环删list
# 一边循环一边删除,会导致下标错乱,删除有误
l=[1,1,2,3,4,5,6,7,8]
# for i in l:
# if i%2!=0:
# l.remove(i)
# print(l)
# 解决方法:重新定义一个变量赋值l列表
l2=[1,1,2,3,4,5,6,7,8]
for i in l2:
if i%2!=0:
l.remove(i)
print(l)
# 浅拷贝
l2=l # 这种方式是浅拷贝,内存地址l2和l相同
l2=l.copy() # 内存地址l2和l不相同,但是这种方式也是浅拷贝,因为如果list里面还要list,这种拷贝也会两个list相互影响
l2=l[:]
import copy
l2=copy.copy(l) # 也是浅拷贝
l2=copy.deepcopy(l) # 深拷贝,只有这一种是深拷贝,其他都是浅拷贝
print(id(l)) # 用id(l2)来获取变量l2的内存地址
print(id(l2))