一、列表的格式
示例:
- namesList = ['xiaoWang','xiaoZhg','xiaa']
比C语言的数组强大的地方在于列表中的元素可以是不同类型的。
- testList = [1, 'a']
二、列表的相关操作("增"、"删"、"改",“查”)
<1> 添加元素
append()通过append可以向列表添加元素。
例:
- # 定义变量A,默认有3个元素
- A = ['rr', 'rag', 'rte']
- print("-----添加之前,列表A的数据-----")
- for tempName in A:
- print(tempName)
- # 提示、并添加元素
- temp = input('请输入要添加的学生姓名:')
- A.append(temp)
- print("-----添加之后,列表A的数据-----")
- for tempName in A:
- print(tempName)
运行结果:
<2> 修改元素("改")
修改元素的时候,要通过下标来确定要修改的是哪个元素,然后才能进行修改。
例:
- # 定义变量A,默认有3个元素
- A = ['rr', 'rag', 'rte']
- print("-----修改之前,列表A的数据-----")
- for tempName in A:
- print(tempName)
- # 修改元素
- A[1] = 'Lu'
- print("-----修改之后,列表A的数据-----")
- for tempName in A:
- print(tempName)
结果:
<3> 查找元素("查"in, not in, index, count)
python中查找的常用方法为:
- in(存在),如果存在那么结果为true,否则为false。
- not in(不存在),如果不存在那么结果为true,否则false。
- #待查找的列表
- A = ['rr', 'rag', 'rte']
- #获取用户要查找的名字
- findName = input('请输入要查找的内容:')
- #查找是否存在
- if findName in A:
- print('在字典中找到了相同的内容')
- else:
- print('没有找到')
运行结果:(找到)
运行结果:(没有找到)
注:
in的方法只要会用了,那么not in也是同样的用法,只不过not in判断的是不存在。
<4> 删除元素("删"del, pop, remove)
del (根据下标进行删除)
- Name = ['加勒比海盗','骇客帝国','第一滴血','霍比特人','速度与激情']
- print('------删除之前------')
- for tempName in Name:
- print(tempName)
- del Name[2]
- print('------删除之后------')
- for tempName in Name:
- print(tempName)
结果:
pop(删除最后一个元素)
- Subject= ['数学', '语文', '英语', '地理', '历史']
- print('------删除之前------')
- for tempSubject in Subject:
- print(tempSubject)
- del Subject[2] #删除第二个元素
- print('------删除之后------')
- for tempSubject in Subject:
- print(tempSubject)
运行结果:
remove (根据元素的值进行删除)
- Subject= ['数学', '语文', '英语', '地理', '历史']
- print('------删除之前------')
- for tempSubject in Subject:
- print(tempSubject)
- # del Subject[2] #删除第二个元素
- Subject.remove('英语')
- print('------删除之后------')
- for tempSubject in Subject:
- print(tempSubject)
结果:
<5> 排序(sort, reverse)
sort方法是将list按特定顺序重新排列,默认为由小到大,参数reverse=True可改为倒序,由大到小。
reverse方法是将list逆置。
- a = [1, 4, 2, 3]
- print(a)
- a.reverse()
- print(a) # 运行结果
- a.sort()
- print(a) # 运行结果
- a.sort(reverse=True)
- print(a) # 运行结果
运行结果:
三、列表的嵌套
1. 列表嵌套
类似while循环的嵌套,列表也是支持嵌套的。
一个列表中的元素又是一个列表,那么这就是列表的嵌套。
例:
- Letter= [['A', 'B'],
- ['C', 'D', 'E'],
- ['F', 'R']]
2. 字典列表
列表中包含字典。比如花名册:
- pep1 = {'name': '蔡同学', 'school': '北京大学'}
- pep2 = {'name': '陈作同', 'school': '中山大学'}
- pep_list = [pep1, pep2]
- for pepo in pep_list:
- print(pepo)
运行结果:
有的应用场景,会在列表中包含大量的字典, 而且其中的每个字典都会包含拥有众多属性的大对象。
3. 列表字典
字典包含列表。比如图书的标签,一本书会被标注多个标签:
- book = {'title': '现代艺术150年',
- 'tags': ['数学', '历史学']}
- for tags in book['tags']:
- print(tags)
运行结果:
四、总结