Python编程:从入门到实践——练习题答案 第三章

3-4 嘉宾名单 :如果你可以邀请任何人一起共进晚餐(无论是在世的还是故去的),你会邀请哪些人?请创建一个列表,其中包含至少3个你想邀请的人;然后,使用 这个列表打印消息,邀请这些人来与你共进晚餐。

Dinner = ["Tom","John","July","Jane"]
print(Dinner)
['Tom', 'John', 'July', 'Jane']

3-5 修改宾客名单 :你刚得知有位嘉宾无法赴约,因此需要另外邀请一位嘉宾。 以完成练习3-4时编写的程序为基础,在程序末尾添加一条print 语句,指出哪位嘉宾无法赴约。 修改嘉宾名单,将无法赴约的嘉宾的姓名替换为新邀请的嘉宾的姓名。 再次打印一系列消息,向名单中的每位嘉宾发出邀请。

Dinner = ["Tom","John","July","Jane"]
print(Dinner[2]+" "+"can't go to this party !")
Dinner[2]="Linda"
print(Dinner)
July can't go to this party !
['Tom', 'John', 'Linda', 'Jane']

3-6 添加嘉宾 :你刚找到了一个更大的餐桌,可容纳更多的嘉宾。请想想你还想邀请哪三位嘉宾。 以完成练习3-4或练习3-5时编写的程序为基础,在程序末尾添加一条print 语句,指出你找到了一个更大的餐桌。 使用insert() 将一位新嘉宾添加到名单开头。 使用insert() 将另一位新嘉宾添加到名单中间。 使用append() 将最后一位新嘉宾添加到名单末尾。 打印一系列消息,向名单中的每位嘉宾发出邀请。

print("I find a more bigger table !")
Dinner = ['Tom','John','July']
Dinner.insert(0,"Lily")
Dinner.insert(2,"Jane")
Dinner.append("Linda")
print(Dinner)
for i in Dinner:
    print(i + ", Welcome to this party !")
I find a more bigger table !
['Lily', 'Tom', 'Jane', 'John', 'July', 'Linda']
Lily, Welcome to this party !
Tom, Welcome to this party !
Jane, Welcome to this party !
John, Welcome to this party !
July, Welcome to this party !
Linda, Welcome to this party !

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

Dinner = ['Lily', 'Tom', 'Jane', 'John', 'July', 'Linda']
print("Because the table can't be served , only two guests could be invited. ")
while len(Dinner)>2:
    print(Dinner[-1] + "! Sorry , you can not go to the dinner !")
    Dinner.pop()#方法pop() 可删除列表末尾的元素,并让你能够接着使用它。术语弹弹出出 (pop)源自这样的类比:列表就像一个栈,而删除列表末尾的元素相当于弹出栈顶元素。
for n in range(len(Dinner)):
    print(Dinner[0] + "! You're still receiving an invitation.")
    del Dinner[0]  #使用del 可删除任何位置处的列表元素,条件是知道其索引。
    #print(Dinner[-1] + "! You're still receiving an invitation.")
    #del Dinner[-1]
print(Dinner)
Because the table can't be served , only two guests could be invited. 
Linda! Sorry , you can not go to the dinner !
July! Sorry , you can not go to the dinner !
John! Sorry , you can not go to the dinner !
Jane! Sorry , you can not go to the dinner !
Lily! You're still receiving an invitation.
Tom! You're still receiving an invitation.
[]

3-8 放眼世界 :想出至少5个你渴望去旅游的地方。 将这些地方存储在一个列表中,并确保其中的元素不是按字母顺序排列的。 按原始排列顺序打印该列表。不要考虑输出是否整洁的问题,只管打印原始Python列表。
使用sorted() 按字母顺序打印这个列表,同时不要修改它。 再次打印该列表,核实排列顺序未变。
使用sorted() 按与字母顺序相反的顺序打印这个列表,同时不要修改它。 再次打印该列表,核实排列顺序未变。
使用reverse() 修改列表元素的排列顺序。打印该列表,核实排列顺序确实变了。
使用reverse() 再次修改列表元素的排列顺序。打印该列表,核实已恢复到原来的排列顺序。
使用sort() 修改该列表,使其元素按字母顺序排列。打印该列表,核实排列顺序确实变了。
使用sort() 修改该列表,使其元素按与字母顺序相反的顺序排列。打印该列表,核实排列顺序确实变了。

Travel = ["Beijing","New York","Xian","Shanghai","Hong Kong","Aomen","WuHan"]# # 将这些地方存储在一个列表中,并确保其中的元素不是按字母顺序排列的。
print(Travel)
print(sorted(Travel))#使用sorted() 按字母顺序打印这个列表,同时不要修改它。
print(Travel)
print(sorted(Travel,reverse = True))# 使用sorted() 按与字母顺序相反的顺序打印这个列表,同时不要修改它
print(Travel.reverse())

['Beijing', 'New York', 'Xian', 'Shanghai', 'Hong Kong', 'Aomen', 'WuHan']
['Aomen', 'Beijing', 'Hong Kong', 'New York', 'Shanghai', 'WuHan', 'Xian']
['Beijing', 'New York', 'Xian', 'Shanghai', 'Hong Kong', 'Aomen', 'WuHan']
['Xian', 'WuHan', 'Shanghai', 'New York', 'Hong Kong', 'Beijing', 'Aomen']
Travel = ["Beijing","New York","Xian","Shanghai","Hong Kong","Aomen","WuHan"]#元素的类型是一样的
Travel.reverse() # 使用reverse() 修改列表元素的排列顺序。打印该列表,核实排列顺序确实变了。
print(Travel)
Travel.reverse()
print(Travel)
['WuHan', 'Aomen', 'Hong Kong', 'Shanghai', 'Xian', 'New York', 'Beijing']
['Beijing', 'New York', 'Xian', 'Shanghai', 'Hong Kong', 'Aomen', 'WuHan']
Travel = ["Beijing","New York","Xian","Shanghai","Hong Kong","Aomen","WuHan"]
Travel.sort() # 使用sort() 修改该列表,使其元素按字母顺序排列。打印该列表,核实排列顺序确实变了。
print(Travel)
Travel.sort(reverse=True)  # 使用sort() 修改该列表,使其元素按与字母顺序相反的顺序排列。打印该列表,核实排列顺序确实变了。
print(Travel)
['Aomen', 'Beijing', 'Hong Kong', 'New York', 'Shanghai', 'WuHan', 'Xian']
['Xian', 'WuHan', 'Shanghai', 'New York', 'Hong Kong', 'Beijing', 'Aomen']

3-9 晚餐嘉宾 :在完成练习3-4~练习3-7时编写的程序之一中,使用len() 打印一条消息,指出你邀请了多少位嘉宾来与你共进晚餐。

Dinner = ['Lily', 'Tom', 'Jane', 'John', 'July', 'Linda']
print("I have invited {} " .format(len(Dinner)))
I have invited 6 

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


  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值