列表
分类:
IT文章
•
2025-02-05 11:59:25
一.列表
1.列表的定义
列表是一个有序的集合。
names = ['Joy', 'Lily', 'Marry']
2.正向访问列表中的元素
>>> names[0] #正向访问列表中的元素时,索引值从0开始取
'Joy'
>>> names[1]
'Lily'
>>> names[2]
'Marry'
3.逆向访问列表中的元素
>>> names[-1] #逆向访问时,索引值从-1开始取
'Marry'
>>> names[-2]
'Lily'
3.切片取值
语句:列表名[下标1:下标2:步长3] 以步长3取出下标1到下标2(包括下标1不包括下标2)之间的元素。
students =['xiaoMing', 'LiLei', 'HanMeimei', 'Paul', 'Lucy', 'Lily', 'Jonh']
students[0:3] #取出下标0至下标3(包括下标1不包括下标3)之间的元素
['xiaoMing', 'LiLei', 'HanMeimei']
students[2:4] #取出下标2至下标4(包括下标2不包括下标4)之间的元素
['HanMeimei', 'Paul']
students[0:] #不写终止位置的下标值就默认取到列表最后一个元素,且包含最后一个元素
['xiaoMing', 'LiLei', 'HanMeimei', 'Paul', 'Lucy', 'Lily', 'Jonh']
students[:4] #不写起始位置的下标值,默认从列表的第一个元素开始取
['xiaoMing', 'LiLei', 'HanMeimei', 'Paul']
students[::2] #以2的步长来取值,隔一取一
['xiaoMing', 'HanMeimei', 'Lucy', 'Jonh']
View Code
4.给列表追加元素
列表名.append(‘元素’)
students =['xiaoMing', 'LiLei', 'HanMeimei', 'Paul', 'Lucy', 'Lily', 'Jonh']
students.append('Joy')
>>> students
['xiaoMing', 'LiLei', 'HanMeimei', 'Paul', 'Lucy', 'Lily', 'Jonh', 'Joy']
View Code
6.向列表中间插入元素
列表名.insert(插入位置, 插入内容)
students =['xiaoMing', 'LiLei', 'HanMeimei', 'Paul', 'Lucy', 'Lily', 'Jonh']
students.insert(3, 'Mily') #将Mily插在下标为3的位置,原来下标为3及3以后的元素顺次往后挪一位
>>> students
['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Paul', 'Lucy', 'Lily', 'Jonh', 'Joy'
View Code
7.删除列表中的元素
students = ['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Paul', 'Lucy', 'Lily', 'Jonh', 'Joy']
del students[4]
>>> students
['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Joy']
8.修改列表中的元素
直接为再次赋值就能改写元素。
students = ['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Joy']
>>> students[-1] = 'Kate'
>>> students
['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate']
9.扩展扩展
列表1.extend(列表2) #将列表2中的元素写进列表1的末尾
students = ['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate']
>>> students2 = ['XiaoMing', 'XiaoHong']
>>> students.extend(students2)
>>> students
['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']
10.列表重复
students2 = ['XiaoMing', 'XiaoHong']
>>> stu_repet=students2*3
>>> stu_repet
['XiaoMing', 'XiaoHong', 'XiaoMing', 'XiaoHong', 'XiaoMing', 'XiaoHong']
11.判断元素是否在列表中
students = ['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']
print('Lily' in students)
True
12.二维列表
animal = [['rabbit', 'dog', 'cat'], ['fish','shrimp'], ['monkey', 'chick', 'duck']]
>>> animal[2][0]
'monkey'
二.列表的方法
1.list.pop(obj)
移除列表中指定下标的元素(默认最后一个元素),并且返回该元素的值。
students = ['xiaoMing', 'LiLei', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']
students.pop(1)
'LiLei' #返回被移除的值
>>> students
['xiaoMing', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']
2.list.remove(obj)
移除列表中某个值的第一个匹配项
students = ['xiaoMing', 'HanMeimei', 'XiaoMing', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']
students.remove('XiaoMing') #移除了第一个XiaoMing
>>> students
['xiaoMing', 'HanMeimei', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']
3.清空列表
students2 = ['XiaoMing', 'XiaoHong']
students2.clear()
>>> students2
[]
4.list.index(obj)
从列表中找出某个值第一个给匹配项的索引位置
students = ['xiaoMing', 'HanMeimei', 'XiaoMing', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']
>>> students.index("XiaoMing")
2
5.len(list)
列表元素个数
students = ['xiaoMing', 'HanMeimei', 'XiaoMing', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']
>>> len(students)
10
6.list.count()
计算某个值在列中出现的次数
students = ['xiaoMing', 'HanMeimei', 'XiaoMing', 'Mily', 'Lucy', 'Lily', 'Jonh', 'Kate', 'XiaoMing', 'XiaoHong']
>>> students.count('XiaoMing')
2
7.max(list)
返回列表元素最大值
num1 = [1 ,2, 3]
>>> max(num1)
3
name = ['joy', 'Lily']
>>> max(name)
'joy'
8.list.reverse()
翻转列表中的元素
name = ['joy', 'Lily']
>>> name.reverse()
>>> name
['Lily', 'joy']
9.list.sort([founc])
对原列进行排序
num2 = [3, 4, 1, 2, 6]
>>> num2.sort()
>>> num2
[1, 2, 3, 4, 6]
com = ['DB', 'Pfizer', '*ali', '123hao', 'baidu']
>>> com.sort()
>>> com
['*ali', '123hao', 'DB', 'Pfizer', 'baidu']
#默认特殊字符在最前面,其次是数字,大写字母,小写字母
10.list.copy
复制列表
com = ['*ali', '123hao', 'DB', 'Pfizer', 'baidu']
>>> com_copy=com.copy()
>>> com_copy
['*ali', '123hao', 'DB', 'Pfizer', 'baidu']
11list(seq)
将元组转换为列表
tuple1=('*ali', '123hao', 'DB', 'Pfizer', 'baidu')
>>> com_CN = list(tuple1)
>>> com_CN
['*ali', '123hao', 'DB', 'Pfizer', 'baidu']