《Python从入门到实践》——课后习题第七章

本文介绍了《Python从入门到实践》一书中第七章的课后习题,包括汽车租赁、餐馆订位、数字判断、比萨配料、电影票价计算、循环控制及熟食店订单管理等编程练习,旨在提升用户的Python编程能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

7-1 汽车租赁 :编写一个程序,询问用户要租赁什么样的汽车,并打印一条消息,如“Let me see if I can find you a Subaru”。

car = input('What kind of car do you like?')
print('Let me see if I can find you a ' + car.title() + '.')

 

7-2 餐馆订位 :编写一个程序,询问用户有多少人用餐。如果超过8人,就打印一条消息,指出没有空桌;否则指出有空桌。

people_num = int(input('How many people invited to have dinner together?'))
if people_num > 8:
    print('There is no table to fit so many people.')

 

7-3 10的整数倍:让用户输入一个数字,并指出这个数字是否是10的整数倍。

num = int(input('Please input a number!'))
if num % 10 == 0:
    print(str(num) + 'is a multiple of ten')

 

7-4 比萨配料 :编写一个循环,提示用户输入一系列的比萨配料,并在用户输入'quit' 时结束循环。每当用户输入一种配料后,都打印一条消息,说我们会在比萨 中添加这种配料。

message = 'What food would you like on your piza?'
message += "\ninput 'quit' when finished."

while True:
    order = input(message)
    if order != 'quit':
        print('We will put ' + order + 'on your pizza!')
    else:
        break 

 

7-5 电影票 :有家电影院根据观众的年龄收取不同的票价:不到3岁的观众免费;3~12岁的观众为10美元;超过12岁的观众为15美元。请编写一个循环,在其中询问用 户的年龄,并指出其票价。

message = ('Please input your age!')
message += ("\ninput 'quit' when finished.")

while True:
    age = input(message)
    if age == 'quit':
        break
    elif int(age) < 3:
        price = '0'
    elif int(age) < 12:
         price = '10'
    else:
         price = '15'
print('You are ' + age + 'old.Your price is' + price)

 

7-6 三个出口 :以另一种方式完成练习7-4或练习7-5,在程序中采取如下所有做法。 在while 循环中使用条件测试来结束循环。 使用变量active 来控制循环结束的时机。 使用break 语句在用户输入'quit' 时退出循环。

age = input('Please input your age!')
while True:
if int(age) < 3:
    price = '0'
elif int(age) < 12:
     price = '10'
else:
     price = '15' 
print('You are ' + age + 'old.Your price is' + price)

 

7-8 熟食店 :创建一个名为sandwich_orders 的列表,在其中包含各种三明治的名字;再创建一个名为finished_sandwiches 的空列表。遍历列表sandwich_orders ,对于其中的每种三明治,都打印一条消息,如I made your tuna sandwich ,并将其移到列表finished_sandwiches 。所有三明治都制作好后,打印一条消息,将这些三明治列出来。

sandwich_orders = ['egg sandwich', 'hotdog sandwich', ' tuna sandwich']
finished_sandwiches = []
while sandwich_orders:
    print('I made your ' + sandwich_orders[0])
    finished_sandwiches.append(sandwich_orders[0])
    del sandwich_orders[0]
print('All sandwichs have done.There are')
print(finished_sandwiches)

 

7-9 五香烟熏牛肉(pastrami)卖完了 :使用为完成练习7-8而创建的列表sandwich_orders ,并确保'pastrami' 在其中至少出现了三次。在程序开头附近添加 这样的代码:打印一条消息,指出熟食店的五香烟熏牛肉卖完了;再使用一个while 循环将列表sandwich_orders 中的'pastrami' 都删除。确认最终的列 表finished_sandwiches 中不包含'pastrami' 。

sandwich_orders = ['pastrami', 'egg sandwich', 'pastrami', 'hotdog sandwich', 'pastrami']
finished_sandwiches = []
while sandwich_orders:
    if sandwich_orders[0] == 'pastrami':
        print('Sorry,pastrami was sold!')
        while 'pastrami' in sandwich_orders:
            sandwich_orders.remove('pastrami')
    else:
        print('I made your ' + sandwich_orders[0])
        finished_sandwiches.append(sandwich_orders[0])
        del sandwich_orders[0]
print('All sandwichs have done.There are')
print(finished_sandwiches)

 

7-10 梦想的度假胜地 :编写一个程序,调查用户梦想的度假胜地。使用类似于“If you could visit one place in the world, where would you go?”的提示,并编写一个打印调查 结果的代码块。

poll = True
poll_dic = {}
while poll:
    name = input("What's you name?")
    place = input("What's you favorite place?")
    poll_dic[name] = place
    reply = input('Any one else?(yes/no)')
    if reply == 'no':
        poll = False

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值