一、创建列表
列表是Python内置的一种数据类型,是一种有序的集合,可以随时添加和删除其中的元素。列表 以[ ]“中括号”初始化:
list0 = []
list1 = [1, 3, 5, 7, 9]
列表的数据项还可以有不同类型:
list2 = [“a”, 1, 3, 6, 4, 5]
二、访问列表
可以使用以‘0’开始的下标索引来访问列表,还可以切片(默认步长为1,顾头不顾尾):
如:
>>>list1[1]
3
>>>list1[1:3]
[3, 5]
>>>list1[:3] #从头开始取,取到第三个,即下标为2的元素
[1, 3, 5]
>>>list1[1:5:2] #取索引为1 到 4的值,步长为2
[3, 7]
列表还可以从‘-1’开始以负数形式倒序访问列表,表示倒数第|n|个,实乃一特色:
>>>list1[-2]
7
三、列表函数
1、len(list)
返回列表长度
>>>len(list1)
5
2、max(list)
返回列表元素最大值,含不同类型元素时会报错
>>>len(list1)
9
3、min(list)
返回列表元素最小值,同上
4、list(seq)
转换为列表,比如字符串与列表的转换:
将字符串的每个字符转换成列表中的元素:
>>>str0 = 'abcd'
>>>list3 = list(str0)
>>>list3
['a', 'b', 'c', 'd']
也可以按符号分割成列表:
>>>str1 = 'a,b,c,d'
>>>s.split(',')
['a', 'b', 'c', 'd']
列表转换为字符串:
>>>str1 = ' '.join(list3)
>>>str1
'abcd'
四、列表操作方法
1、添加
a) 在列表末尾追加
>>>list3.**append**('e')
>>> list3
['a', 'b', 'c', 'd', 'e']
b) 在列表指定位置添加
>>> list3.**insert**(2,'d')
>>> list3
['a', 'b', 'd', 'c', 'd', 'e']
c) 拼接,即在列表末尾追加另一个序列,也可以直接以‘+’号拼接列表
>>> list2.**extend**(list3)
>>> list2
["a", 1, 3, 6, 4, 5, 'a', 'b', 'd', 'c', 'd', 'e']
2、删除
a) list.pop()
如果没有指定下标,则默认弹出列表最后一个元素
>>> list3.pop()
'e'
>>>list3
['a', 'b', 'd', 'c', 'd']
b)list.remove()
指定删除元素,重复时只删除第一个匹配的元素
>>> list3.remove('d')
>>> list3
['a', 'b', 'c', 'd']
c)del list[]
>>> del list3[3]
>>> list3
['a', 'b', 'c']
d) list.clear
清空列表
3、排序
a) list.sort() 默认升序
list.sort(reverse=True) 降序排序
>>> list4 = [9,7,12,15,3,5]
>>> list4.sort()
>>> list4
[3, 5, 7, 9, 12, 15]
>>>sorted(list4) #直接返回排序好的列表
[3, 5, 7, 9, 12, 15]
b) list.reverse()
反向排序列表中元素,将列表的元素顺序进行翻转。
>>> list4.reverse()
>>> list4
[15, 12, 9, 7, 5, 3]
4、list.count(obj)
统计某个元素在列表中出现的次数
5、list.index(obj)
从列表中找出某个值第一个匹配项的索引位置,如果列表里面有重复的元素,只能显示出第一个索引
6、复制
>>> list4.**copy**()
[15, 12, 9, 7, 5, 3]
7、in 或者 not in 判断元素是否存在于列表中
迭代读取列表
>>> for x in list4:
print(x)
15
12
9
7
5
3
8、enumerate对列表进行枚举
l1 = ['a', 'b', 'c', 'd', 'e']
for i, x in enumerate(l1, 100): # 100指定枚举开始的数字
print(i, x)
# 输出
100 a
101 b
102 c
103 d
104 e