组合数据类型(列表)
一,列表(list)
1,创建列表
lst = [1,2,3,4,5] # 列表内是数字 lst = ['a', 'b', 'c', 'd'] # 列表内是字符 lst = ['my', 'name', 'is', 'victor'] # 列表内是字符串
2,基本操作
a,连接
lst1 = [1,2,3] lst2 = [4,5,6] print (lst1 + lst2) >>>[1,2,3,4,5,6]
b,判断
lst = [1,2,3,4,5,6] a = 1 print (a in lst) >>>True
c,复制
lst = ["a","b","c"] print (lst*2) >>>["a","b","c","a","b","c"]
d,索引
lst = [1,2,3,4,5,6,7,8,9,0] print (lst[0],lst[5]) print (lst[-1]) >>>1 6 0
e,切片
lst = [1,2,3,4,5,6,7,8,9,0] print (lst[3:8]) print (lst[:5]) print (lst[5:]) print (lst[5:-1]) >>>[4, 5, 6, 7, 8] [1, 2, 3, 4, 5] [6, 7, 8, 9, 0] [6, 7, 8, 9]
f,步长
lst = [1,2,3,4,5,6,7,8,9,0] print (lst[0:5:2]) # 0代表索引起始值,5代表索引结束值,2代表步长 print (lst[::2]) # 以步长2,从第一个值开始截取整个list列表 print (lst[3::2]) # 从索引起始值(第三个值) 4到结束,步长2截取整个列表 >>>1,3,5 1,3,5,7,9 4,6,8,0
三,常用功能
a,追加
lst = [1,2,3,4,5,6,7,9,0] lst.append("hello") # 追加的是字符串 print (lst) >>> [1,2,3,4,5,6,7,9,0,"hello"]
lst = [1,2,3,4,5,6,7,9,0] lst.append(["a","b","c"]) print (lst) >>>[1,2,3,4,5,6,7,9,0,["a","b","c"]] # 追加是整个列表(list)
extend()
lst = [1,2,3,4,5,6,7,9,0] lst.extend(["a","b","c"]) print (lst) >>>[1,2,3,4,5,6,7,9,0,"a","b","c"] # 追加列表中的单个元素(int或str)
b,删除
remove()
list = ["my","my","name","is","victor"] list.remove("my") # 删除匹配到的第一个元素 print (lst) >>> ["my","name","is","victor"]
del
lst = ["my","my","name","is","victor"] del.lst[2:] # 删除列表的某个索引值 print (lst) >>>["my","name"]
del.clear()
lst = ["my","my","name","is","victor"] del.clear() # 清空列表 print (lst) >>>[]
c,插入
lst = list[rang(10)] print lst >>>[0,1,2,3,4,5,6,7,8,9] lst.insert(3,a) # 此处代表在索引3处,即第4个值处插入a print lst >>>[0,1,2,a,4,5,6,7,8,9]
d,复制
lst1 = list[rang(10)] lst2 = list1.copy() lst2[2] = "hello" print lst1 print lst2 >>>[0,1,2,3,4,5,6,7,8,9] [0,1,"hello",2,3,4,5,6,7,8,9]
e,排序
lst1 = [45,23,89,67,10,58] lst2 = ["cd","ae","de"] lst1.sort() lst2.sort() print (list1,list2) >>>[10, 23, 45, 58, 67, 89] ['ae', 'cd', 'de'] lst1.sort(reverse = True) lst2.sort(reverse = True) print (lst1,lst2)
d,计数
x=[1,2,3,1,[1],[1,1]] print (x.count(1)) >>>2