python3|python3_列表

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)

结果为:
python3|python3_列表
文章图片

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)

结果为:
python3|python3_列表
文章图片

(三)列表的增删改
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)

结果为:
python3|python3_列表
文章图片

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)

结果为:
python3|python3_列表
文章图片

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)

python3|python3_列表
文章图片

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)

结果为:
python3|python3_列表
文章图片

二.组织列表 (一)排序
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_列表】python3|python3_列表
文章图片

    推荐阅读