python3_列表
一.列表 (一)概念
列表 由一系列按特定顺序排列的元素组成。你可以创建包含字母表中所有字母、数字0~9或所有家庭成员姓名的列表;也可以将任何东西加入列表中,其中的元素之间可以没有 任何关系。鉴于列表通常包含多个元素,给列表指定一个表示复数的名称(如letters 、digits 或names )是个不错的主意。
在Python中,用方括号([] )来表示列表,并用逗号来分隔其中的元素。
(二)列表的访问
list = [ ' a ' , ' b ' , ' c ' , ' d ' ]
索引值0123
访问列表中第二个元素的元素 - - - list[1]
访问列表中倒数第二个元素的元素 - - - list[-2]
【练习】 1 姓名: 将一些朋友的姓名存储在一个列表中,并将其命名为names 。依次访问该列表中的每个元素,从而将每个朋友的姓名都打印出来。
names = ['a', 'b', 'c']
for name in names:
print("name is " + name)
结果为:
文章图片
2 自己的列表: 想想你喜欢的通勤方式,如骑摩托车或开汽车,并创建一个包含多种通勤方式的列表。根据该列表打印一系列有关这些通勤方式的宣言,如“I would like to own a Honda motorcycle”。
out_style = ['自行车', '汽车', '公交车', 'foot']
for style in out_style:
print("I would like to own a " + style)
结果为:
文章图片
(三)列表的增删改
1.修改 要修改列表元素,可指定列表名和要修改的元素的索引,再指定该元素的新值。
#将索引值为0的元素更改
out_style[0]='bike'
2.添加 (1)文末添加
#在末尾加入
out_style.append('bike')
(2)插入 使用方法insert() 可在列表的任何位置添加新元素。为此,你需要指定新元素的索引和值。
#在索引值为1的位置插入
out_style.insert(1,'bike')
3.删除 (1)del语句
#删除索引值为0的元素
del out_style[0]
(2)pop方法
#删除末尾的元素
out_style.pop()
#删除索引值为1的元素
out_style.pop(1)
(3)remove方法 有时候,你不知道要从列表中删除的值所处的位置。如果你只知道要删除的元素的值,可使用方法remove() 。
#删除元素值为bike的元素
out_style。remove['bike']
【练习】: 4 嘉宾名单:如果你可以邀请任何人一起共进晚餐(无论是在世的还是故去的),你会邀请哪些人?请创建一个列表,其中包含至少3个你想邀请的人;然后,使用 这个列表打印消息,邀请这些人来与你共进晚餐。
people = ['a', 'b', 'c', 'd']
print(people)
结果为:
文章图片
5 修改嘉宾名单:你刚得知有位嘉宾无法赴约,因此需要另外邀请一位嘉宾。
- 以完成练习3-4时编写的程序为基础,在程序末尾添加一条print 语句,指出哪位嘉宾无法赴约。
- 修改嘉宾名单,将无法赴约的嘉宾的姓名替换为新邀请的嘉宾的姓名。
- 再次打印一系列消息,向名单中的每位嘉宾发出邀请。
people = ['a', 'b', 'c', 'd']
print("原定计划人为:")
print(people)
print("因某些原因,a来不了,替换为A")
people[0] = 'A'
for i in people:
print("welcome to invite " + i)
结果为:
文章图片
6 添加嘉宾:你刚找到了一个更大的餐桌,可容纳更多的嘉宾。请想想你还想邀请哪三位嘉宾。
- 以完成练习3-4或练习3-5时编写的程序为基础,在程序末尾添加一条print 语句,指出你找到了一个更大的餐桌。
- 使用insert()将一位新嘉宾添加到名单开头。
- 使用insert() 将另一位新嘉宾添加到名单中间。
- 使用append() 将最后一位新嘉宾添加到名单末尾。
- 打印一系列消息,向名单中的每位嘉宾发出邀请。
print("找到了更大的桌子")
#添加一个新嘉宾到开头
people.insert(0,'e')
print(people)
#添加一个到中间
people.insert(2,'f')
print(people)
#添加一个到结尾
people.append('g')
print(people)
文章图片
7 缩减名单 :你刚得知新购买的餐桌无法及时送达,因此只能邀请两位嘉宾。
- 以完成练习3-6时编写的程序为基础,在程序末尾添加一行代码,打印一条你只能邀请两位嘉宾共进晚餐的消息。
- 使用pop()不断地删除名单中的嘉宾,直到只有两位嘉宾为止。每次从名单中弹出一位嘉宾时,都打印一条消息,让该嘉宾知悉你很抱歉,无法邀请他来共进 晚餐。
- 对于余下的两位嘉宾中的每一位,都打印一条消息,指出他依然在受邀人之列。 使用del
- 将最后两位嘉宾从名单中删除,让名单变成空的。打印该名单,核实程序结束时名单确实是空的。
print("不好意思,钱只狗两人花")
num = len(people)
while num > 2:
people.pop(0)
print("i,m sorry")
num = len(people)
else:
print("大家都已离开,就剩下:")
print(people)
结果为:
文章图片
二.组织列表 (一)排序
1.永久性排序 Python方法sort() 让你能够较为轻松地对列表进行排序(字母大小写)
永久正序:sort()
永久倒序:reverse(),sort(reverse=True)
临时正序:sorted()
临时倒序:sorted(reverse=True)
注意: (i)reverse() 不是指按与字母顺序相反的顺序排列列表元素,而只是反转列表元素的排列顺序。
(ii)方法reverse() 永久性地修改列表元素的排列顺序,但可随时恢复到原来的排列顺序,为此只需对列表再次调用reverse() 即可。
2.确认长度 使用函数len() 可快速获悉列表的长度
【练习】 8 放眼世界 :想出至少5个你渴望去旅游的地方。
- 将这些地方存储在一个列表中,并确保其中的元素不是按字母顺序排列的。
- 按原始排列顺序打印该列表。不要考虑输出是否整洁的问题,只管打印原始Python列表。
- 使用sorted()按字母顺序打印这个列表,同时不要修改它。 再次打印该列表,核实排列顺序未变。
- 使用sorted()按与字母顺序相反的顺序打印这个列表,同时不要修改它。 再次打印该列表,核实排列顺序未变。
- 使用reverse()修改列表元素的排列顺序。打印该列表,核实排列顺序确实变了。
- 使用reverse()再次修改列表元素的排列顺序。打印该列表,核实已恢复到原来的排列顺序。
- 使用sort()修改该列表,使其元素按字母顺序排列。打印该列表,核实排列顺序确实变了。
- 使用sort()修改该列表,使其元素按与字母顺序相反的顺序排列。打印该列表,核实排列顺序确实变了。
places=['g','c','a','d','e']
print(places)
a = sorted(places)
#临时修改顺序
print(a)
print(places)
#临时反序修改
print(sorted(places,reverse=True))
print(places)
#永久反序
places.reverse()
print(places)
places.reverse()
print(places)
#永久正序
places.sort()
print(places)
【python3|python3_列表】
文章图片
推荐阅读
- 程序员|python如何生成一系列浮点数(含例子)
- python|数字图像基本操作——图像采样、量化、算术运算、点运算实验结果及分析
- —OpenCV|OpenCV-Python——第7章(图像的基本运算)
- python|Python高效实现滑块验证码自动操纵
- python|python之numpy库--科学计算基础库必学(一)
- labview|labview python opencv_OpenCV官方教程中文版(for Python)pdf+自己编写的全套目录
- opencv|【转载搬运】教程[OpenCV-Python] 部分 II OpenCV 中的 Gui特性
- OpenCV从入门到精通|OpenCV中的图像处理 —— 改变颜色空间+图像几何变换
- python|python爬虫从0到1 - Scrapy框架的实战应用