当前位置:首页>python>【学习记录】Python编程:从入门到实践 第3章练习题

【学习记录】Python编程:从入门到实践 第3章练习题

  • 2026-10-11 08:44:15
【学习记录】Python编程:从入门到实践 第3章练习题
知识点

列表(list)访问列表元素修改、添加、删除列表改变列表顺序列表长度

练习3.1: 姓名

练习3.1 姓名

将一些朋友的姓名存储在一个列表中,并将其命名为names。依次访问该列表的每个元素,从而将每个朋友的姓名都打印出来。

31_names.py

  • 1
  • 2
  • 3
  • 4
names = ["Alice", "Bob", "Cindy"]print(names[0])print(names[1])print(names[2])

练习3.2:问候语

练习3.2:问候语

继续使用练习3.1中的列表,但不打印每个朋友的姓名,而是为每人打印一条消息。每条消息都包含相同的问候语,但抬头为相应朋友的姓名。

32_greetings.py

  • 1
  • 2
  • 3
  • 4
  • 5
names = ["Alice", "Bob", "Cindy"]print(f'Hello, {names[0]}.')print(f'Hello, {names[1]}.')print(f'Hello, {names[2]}.')

练习3.3:自己的列表

练习3.3:自己的列表

想想你喜欢的通勤方式,如骑摩托车或开汽车,并创建一个包含多种通勤方式的列表。根据该列表打印一系列有关这些通勤方式的陈述,如下所示。I would like to own a Honda motorcycle.

33_vehicles.py

  • 1
  • 2
  • 3
  • 4
  • 5
vehicles=['car','motorcycle','cycle']print(f'I would like to own a {vehicles[0]}.')print(f'I would like to own a {vehicles[1]}.')print(f'I would like to own a {vehicles[2]}.')
Tip

建议给列表指定一个表示复数的名称列表索引可以使用负数,表示从后向前数


练习3.4:嘉宾名单

练习3.4:嘉宾名单

如果你可以邀请任何人一起共进晚餐,你会邀请哪些人?请创建一个列表,其中包含至少三个你想邀请的人,然后使用这个列表打印消息,邀请这些人都来与你共进晚餐。

34_guests.py

  • 1
  • 2
  • 3
  • 4
guests = ['表格','艺术字']print(f'{guests[0]},晚上一起吃饭吗?')print(f'{guests[1]},晚上一起吃饭吗?')

练习3.5:修改嘉宾名单

练习3.5:修改嘉宾名单

你刚得知有位嘉宾无法赴约,因此需要另外邀请一位嘉宾。

  • 以完成练习3.4时编写的程序为基础,在程序末尾添加函数调print(),指出哪位嘉宾无法赴约。
  • 修改嘉宾名单,将无法赴约的嘉宾的姓名替换为新邀请的嘉宾的姓名。
  • 再次打印一系列消息,向名单中的每位嘉宾发出邀请。

35_change_guest.py

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
guests = ['表格','艺术字']print(f'{guests[0]},晚上一起吃饭吗?')print(f'{guests[1]},晚上一起吃饭吗?')print(f'{guests[1]}无法赴约。')guests[1]='图片'print(f'{guests[0]},晚上一起吃饭吗?')print(f'{guests[1]},晚上一起吃饭吗?')

练习3.6:添加嘉宾

练习3.6:添加嘉宾

你刚找到了一张更大的餐桌,可容纳更多的嘉宾就座。请想想你还想邀请哪三位嘉宾。以完成练习3.4或练习3.5时编写的程序为基础,在程序末尾添加函数调用print(),指出你找到了一张更大的餐桌。

  • 使用insert()将一位新嘉宾添加到名单开头。
  • 使用insert()将另一位新嘉宾添加到名单中间。
  • 使用append()将最后一位新嘉宾添加到名单末尾。
  • 打印一系列消息,向名单中的每位嘉宾发出邀请。

36_more_guests.py

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
guests = ['表格','艺术字']print(f'{guests[0]},晚上一起吃饭吗?')print(f'{guests[1]},晚上一起吃饭吗?')# 有位嘉宾无法赴约,因此需要另外邀请⼀位嘉宾print(f'{guests[1]}无法赴约。')guests[1]='图片'print(f'{guests[0]},晚上一起吃饭吗?')print(f'{guests[1]},晚上一起吃饭吗?')print('我找到了一张更大的餐桌!')# 邀请新嘉宾guests.insert(0,'页眉')guests.insert(2,'图表')guests.append('页脚')print(f'{guests[0]},晚上一起吃饭吗?')print(f'{guests[1]},晚上一起吃饭吗?')print(f'{guests[2]},晚上一起吃饭吗?')print(f'{guests[3]},晚上一起吃饭吗?')print(f'{guests[4]},晚上一起吃饭吗?')

练习 3.7:缩短名单

练习 3.7:缩短名单

你刚得知新购买的餐桌无法及时送达,因此只能邀请两位嘉宾。

  • 以完成练习 3.6 时编写的程序为基础,在程序末尾添加一行代码,打印一条你只能邀请两位嘉宾共进晚餐的消息。
  • 使用pop()不断地删除名单中的嘉宾,直到只有两位嘉宾为止。每次从名单中弹出一位嘉宾时,都打印一条消息,让该嘉宾知道你很抱歉,无法邀请他来共进晚餐。
  • 对于余下两位嘉宾中的每一位,都打印一条消息,指出他依然在受邀之列。
  • 使用del将最后两位嘉宾从名单中删除,让名单变成空的。打印该名单,核实名单在程序结束时确实是空的。

37_shrink_guest.py

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
guests = ['表格','艺术字']print(f'{guests[0]},晚上一起吃饭吗?')print(f'{guests[1]},晚上一起吃饭吗?')# 有位嘉宾无法赴约,因此需要另外邀请⼀位嘉宾print(f'****{guests[1]}无法赴约。****')guests[1]='图片'print(f'{guests[0]},晚上一起吃饭吗?')print(f'{guests[1]},晚上一起吃饭吗?')print('****我找到了一张更大的餐桌!****')# 邀请新嘉宾guests.insert(0,'页眉')guests.insert(2,'图表')guests.append('页脚')print(f'{guests[0]},晚上一起吃饭吗?')print(f'{guests[1]},晚上一起吃饭吗?')print(f'{guests[2]},晚上一起吃饭吗?')print(f'{guests[3]},晚上一起吃饭吗?')print(f'{guests[4]},晚上一起吃饭吗?')print("****很抱歉,新购买的餐桌无法及时送达,今天只能邀请两位嘉宾了。****")# 删除名单中的客人print(f"{guests.pop()},很抱歉,今天晚上不能一起吃饭了。")print(f"{guests.pop()},很抱歉,今天晚上不能一起吃饭了。")print(f"{guests.pop()},很抱歉,今天晚上不能一起吃饭了。")print(f"{guests[0]},记得今天晚上一起吃饭.")print(f"{guests[1]},记得今天晚上一起吃饭.")# 清空名单del guests[1]del guests[0]print(guests)

列表方法总结1及del语句

方法
功能
参数
append(obj)
在列表 末尾 追加元素
obj为要追加的元素
insert(index,obj)
将元素插入到对应索引位置
index为要插入元素的索引,obj为要插入的元素
pop(index=-1)
弹出列表中的一个元素(默认最后一个),并返回该元素的值
index为要弹出元素的索引,可省略
remove(obj)
删除列表中对应值的第一个匹配项
obj为要删除元素的值
del list[index]
del语句:删除列表的对应元素

练习3.8:放眼世界

练习3.8:放眼世界

想出至少5个你想去旅游的地方。

  • 将这些地方存储在一个列表中,并确保其中的元素不是按字母顺序排列的。
  • 按原始排列顺序打印该列表。不要考虑输出是否整洁,只管打印原始Python列表就好。
  • 使用sorted()按字母顺序打印这个列表,不要修改它。
  • 再次打印该列表,核实排列顺序未变。
  • 使用sorted()按与字母顺序相反的顺序打印这个列表,不要修改它。
  • 再次打印该列表,核实排列顺序未变。
  • 使用reverse()修改列表元素的排列顺序。打印该列表,核实排列顺序确实变了。
  • 使用reverse()再次修改列表元素的排列顺序。打印该列表,核实已恢复到原来的排列顺序。
  • 使用sort()修改该列表,使其元素按字母顺序排列。打印该列表,核实排列顺序确实变了。
  • 使用sort()修改该列表,使其元素按与字母顺序相反的顺序排列。打印该列表,核实排列顺序确实变了。

21_simple_message.py

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
places=['Beijing','London','Paris','New York','Berlin','Rome']print(places)# 临时排序print(sorted(places))print(sorted(places,reverse=True))print(places)# 反转顺序places.reverse()print(places)places.reverse()print(places)# 排序places.sort()print(places)places.sort(reverse=True)print(places)

练习 3.9:晚餐嘉宾

练习 3.9:晚餐嘉宾

选择你为完成练习 3.4~练习 3.7 而编写的一个程序,在其中使用len()打印一条消息,指出你邀请了多少位嘉宾来共进晚餐。

21_simple_message.py

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
guests = ['表格','艺术字']print(f'{guests[0]},晚上一起吃饭吗?')print(f'{guests[1]},晚上一起吃饭吗?')print(f'我邀请了{len(guests)}位嘉宾来共进晚餐。')

练习3.10:尝试使用各个函数

练习3.10:尝试使用各个函数

想想可存储到列表中的东西,如山川、河流、国家、城市、语言或你喜欢的任何东西。编写一个程序,在其中创建一个包含这些元素的列表。然后,至少把本章介绍的每个函数都使用一次来处理这个列表。

21_simple_message.py

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
rivers=['Amazon River','Nile River','Yangtze River','Mississippi River','Yellow River']print(rivers)# 添加元素rivers.append('Volga River')print(rivers)rivers.insert(-2,'Rhine River')print(rivers)# 弹出元素print(rivers.pop(1))print(rivers)# 删除元素rivers.remove('Mississippi River')print(rivers)# 更改列表顺序print(sorted(rivers))rivers.reverse()print(rivers)rivers.sort(reverse=True)print(rivers)# 列表长度print(len(rivers))

列表方法总结2及列表相关函数

方法
功能
参数
 sort(reverse=False)
对列表永久排序,默认升序排列
reverse可省略,reverse=True 时降序排列
sorted(list,reverse=False)
对列表临时排序,返回临时排序结果,升序排列
reverse可省略,reverse=True 时降序排列
reverse()
反转列表元素顺序
len(list)
返回列表元素个数
list
为列表

练习 3.11:有意引发错误

练习 3.11:有意引发错误

如果你还没有在程序中遇到索引错误,就尝试引发⼀个这种错误吧。在你的⼀个程序中修改索引,以引发索引错误。在关闭程序前,务必消除这种错误。

21_simple_message.py

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
guests = ['表格','艺术字']print(guests)del guests[0]del guests[1]# 正确# del guests[1]# del guests[0]

最新文章

随机文章