例子:
list1 = [1, 2, 3, 4, 5, 6, [6, 7, 8,9], 'hi', 'hello', 6]
list2 = [7, 8, 1, 2]
list3 = ['good', 'well', 'apple', 'bye']
增
(1)在列表最后增加一个元素:“end”
list1.append("end")
(2)在制定位置上插入一个元素:“good”
list1.insert(1, "good")
注:第一个参数为列表的下标位置,第二个参数为要插入列表的元素。
删
(1)通过元素内容,一次删除一个元素
list1.remove("hi")
(2)删除连续一段元素
方法一: del list1[2:5]
方法二:list1[2:5] = []
(3)删除整个列表
del list1
(4)删除最后一个元素
list1.pop()
(5)通过下标删除一次删除一个元素
list1.pop(1)
注:pop方法中的1为下标
改
(1)通过下标修改指定下标位置的元素
list1[2] = 66
(2) 列表反转
list1.reverse()
(3) 列表排序
list2.sort()
list3.sort()
注:
python3.x中排序,仅数字或字符,不可混合。
python2.x中排序,数字、字符或混合都可以。
(4)列表合并
方法一: list1.extend(list2)
方法二: list1 += list2
(5) 修改列表中全部相同元素
for i in range(list1.count(6)):
index_of_ele = list1.index(6)
list1[index_of_ele] = 666666
查
(1)查找列表中元素的下标(第一个满足条件的元素)
list1.index(6)
注:6为列表中的元素
(2)统计列表中元素的个数
list1.count(6)
注:6为列表中的元素
(3) 计算列表的总元素个数
len(list1)
(4)判断元素是否在列表中存在
if 6 in list1:
print("6 in list1")
其他
(1) 切片
a)不写步长,默认为1
list1 = [1, 2, 3, 4, 5, 6, [6, 7, 8,9], 'hi', 'hello', 6]
list1[1:5] #[2, 3, 4, 5],虎头蛇尾(下标从1到4)
list1[:3] #[1, 2, 3] 下标从0到2
list1[8:] #['hello', 6] 下标从8到最后
b)指定步长
list1[1:5:2] #[2, 4]
注:2表示步长为2
c)list1[:i] + list1[i:] == list1
d) list1 与 list1[:] 的列表内容相同,但他们是两个列表。
可以通过 id(list1) , id(list1[:]) 确认
(2)拷贝
a)浅拷贝
方法一:
list2 = list1.copy()
方法二:
import copy
list2 = copy.copy(list1)
方法三:
list3 = list(list1)
方法四:
list4 = list1[:]
b)深拷贝
import copy
list2 = copy.deepcopy(list1)
注:浅拷贝与深拷贝区别
浅拷贝:第一层为完全拷贝,即第一层各自独立,从第二层开始为引用拷贝,即数据共享。
深拷贝:数据完成拷贝,数据完全独立,互不影响。