list是Python中最为常用的数据类型,当我们对list进行操作时,首先要想到一点是,我们能不能利用Python里对list的内置函数来解决这个问题,因为Python中针对列表已经有很多的内置函数,了解这些内置函数能够极大的方便我们对list的操作。
# 定义一个涵盖各种类型的list,将其内容与地址打印出来
list1=[1, 2.3, "lis", [2,3,4], 'Adam']
print(list1, id(list1))
# 比较list中添加元素的几种方法的区别
list3=[6, 7]
list2=list1+list3 # '+' 将两个列表连在一起
print(list2, id(list2))
# list中的extend()方法,在原有基础上进行扩展,否则会导致None
# list2 = list1.extend(list3)
# print(list2, id(list2), type(list2)) 对extend()错误的操作
list1.extend(list3)
print(list1, id(list1), type(list1))
# 运行后发现是在原列表list1上进行的扩展,且通过id()后可知,位置是相同的,这更证实了
# list的 append() 用法
list1.append('scc')
print(list1,id(list1))
另外, 使用del进行list 的删除时,需要了解到底是删除变量还是删除数据,这两个是有本质上的区别
我们发现,当删除变量的时候,仅仅是销毁了变量,并没有销毁变量指向的数据,如上面的 print(ls2), 它是有数据的。
当删除数据时,无论是当前的,还是复制的list, 里面的数据全部产生了变化。