• Python编程:从入门到实践——【作业】——第七章(输入和while循环)


    第七章作业

    7-1 汽车租赁 : 编写一个程序, 询问用户要租赁什么样的汽车, 并打印一条消息, 如“Let me see ifI can find you a Subaru”。
    7-2 餐馆订位 : 编写一个程序, 询问用户有多少人用餐。 如果超过8人, 就打印一条消息, 指出没有空桌; 否则指出有空桌。
    7-3 10的整数倍 : 让用户输入一个数字, 并指出这个数字是否是10的整数倍。
    答:7-1

    prompt = 'What kind of car would you like to rent?'
    car = input(prompt)
    print('
    “Let me see ifI can find you a ' + car + '”。')
    
    输出:
    What kind of car would you like to rent?Subaru
    
    “Let me see ifI can find you a Subaru”。

    7-2

    number = input('How many people are eating?')
    number = int(number)
    if number >= 9:
        print('
     There have not tables')
    else:
        print('
     There have a table')
    
    输出:
    How many people are eating?8
    
     There have a table

    7-3

    方法1

    number = input('Please input a diget:')
    number = int(number)#,有这个不行啊,为什么呢
    if number % 10 == 0:#这里的number带()的
        print(str(number) + ' 这个数字是10的整数倍')
    else:
        print(str(number) + ' 这个数字不是10的整数倍')#这里的number 要加str
    
    输出:
    Please input a diget:5
    5 这个数字不是10的整数倍

    方法2

    number = input('Please input a diget:')
    #number = int(number),有这个不行啊,威慑呢么
    if int(number) % 2 == 0:#这里的number带()的
        print(number + ' 这个数字是10的整数倍')
    else:
        print(number + ' 这个数字不是10的整数倍')
    
    输出;
    Please input a diget:5
    5 这个数字不是10的整数倍

     7-4 比萨配料 : 编写一个循环, 提示用户输入一系列的比萨配料, 并在用户输入' quit' 时结束循环。 每当用户输入一种配料后, 都打印一条消息, 说我们会在比萨
    中添加这种配料。
    7-5 电影票 : 有家电影院根据观众的年龄收取不同的票价: 不到3岁的观众免费; 3~12岁的观众为10美元; 超过12岁的观众为15美元。 请编写一个循环, 在其中询问用
    户的年龄, 并指出其票价。
    7-6 三个出口 : 以另一种方式完成练习 7-4或练习 7-5, 在程序中采取如下所有做法。
          在while 循环中使用条件测试来结束循环。
          使用变量active 来控制循环结束的时机。
          使用break 语句在用户输入' quit' 时退出循环。
    7-7 无限循环 : 编写一个没完没了的循环, 并运行它(要结束该循环, 可按Ctrl +C, 也可关闭显示输出的窗口) 。

     7-4

    prompt = "
    Please Enter a series of pizza toppings: "
    prompt += "
    We will add this ingredient to our pizza. "
    message = ''
    while message != 'quit':
        message = input(prompt)
        if message != 'quit':
            print(message)
    
    输出;
    Please Enter a series of pizza toppings: 
    We will add this ingredient to our pizza. banana
    banana
    
    Please Enter a series of pizza toppings: 
    We will add this ingredient to our pizza. chese
    chese
    
    Please Enter a series of pizza toppings: 
    We will add this ingredient to our pizza. quit

     7-5

    print('Cinemas will receive different fares based on viewer age:')
    tickets = '
     Please,tell me how old are you:'
    age = ''
    active = True
    while age != 'quit':
       age = input(tickets)
       if age == 'quit':
           active = False
       elif int(age) < 3:
           print('free')
       elif int(age) < 12:
           print(10)
       else:
           print(15)
    
    输出:
    Cinemas will receive different fares based on viewer age:
    
     Please,tell me how old are you:2
    free
    
     Please,tell me how old are you:10
    10
    
     Please,tell me how old are you:15
    15
    
     Please,tell me how old are you:quit

     7-6 用break语句:

    print('Cinemas will receive different fares based on viewer age:')
    tickets = '
     Please,tell me how old are you:'
    age = ''
    while True:
       age = input(tickets)
       if 'quit'in age:
           print('quit')
           break
       elif int(age) < 3:
           print('free')
       elif int(age) < 12:
           print(10)
       else:
           print(15)
    
    
    输出:
    Cinemas will receive different fares based on viewer age:
    
     Please,tell me how old are you:2
    free
    
     Please,tell me how old are you:16
    15
    
     Please,tell me how old are you:quit
    quit

     7-7

    active = True
    while active:
         print('hello world')

    7-8 熟食店 : 创建一个名为sandwich_orders 的列表, 在其中包含各种三明治的名字; 再创建一个名为finished_sandwiches 的空列表。 遍历列
    表sandwich_orders , 对于其中的每种三明治, 都打印一条消息, 如I made your tuna sandwich , 并将其移到列表finished_sandwiches 。 所有三明
    治都制作好后, 打印一条消息, 将这些三明治列出来。
    7-9 五香烟熏牛肉( pastrami) 卖完了 : 使用为完成练习 7-8而创建的列表sandwich_orders , 并确保' pastrami' 在其中至少出现了三次。 在程序开头附近添加
    这样的代码: 打印一条消息, 指出熟食店的五香烟熏牛肉卖完了; 再使用一个while 循环将列表sandwich_orders 中的' pastrami' 都删除。 确认最终的列
    表finished_sandwiches 中不包含' pastrami' 。
    7-10 梦想的度假胜地 : 编写一个程序, 调查用户梦想的度假胜地。 使用类似于“Ifyou could visit one place in the world, where would you go?”的提示, 并编写一个打印调查
    结果的代码块。

    7-8

    sandwich_orders = ['guita','chess','banana']
    finished_sandwiches= []
    while sandwich_orders:
         current_sandwich = sandwich_orders.pop()
         print('I made your tuna ' + current_sandwich)
         finished_sandwiches.append(current_sandwich)
    print('所有三明治都制作好了')
    for current_sandwich in finished_sandwiches:
         print(current_sandwich)
    
    输出;
    I made your tuna banana
    I made your tuna chess
    I made your tuna guita
    所有三明治都制作好了
    banana
    chess
    guita

     7-9

    sandwich_orders = ['guita','pastrami','chess','pastrami','banana','pastrami' ]
    print('熟食店的五香烟熏牛肉(pastrami)都卖完了')
    while 'pastrami' in sandwich_orders:#一定要注意空格,错了好多次了
         sandwich_orders.remove('pastrami')#必须加括号啊
    print(sandwich_orders)
    
    
    输出;
    熟食店的五香烟熏牛肉(pastrami)都卖完了
    ['guita', 'chess', 'banana']

     7-10

    responses = {}
    dream_resort = True
    while dream_resort:
         name = input("
    What is your name? ")
         response = input('“Ifyou could visit one place in the world, where would you go?”')
         responses[name] = response  #这将答卷存储在字典中,如果是responses[response] = name,就是字典中键与值颠倒过来
         repeat = input("Would you like to let another person respond? (yes/ no) ")#这有了这个input就不算等于啊,算等待输入
         if repeat == 'no' :
              dream_resort = False
    print("
    --- Poll Results ---")
    for name,response in responses.items():
         print(name + "would like visit " + response + "in the world . ")
    
    
    输出:What is your name? 曹富
    “Ifyou could visit one place in the world, where would you go?”长城
    Would you like to let another person respond? (yes/ no) yes
    
    What is your name? 曹辉
    “Ifyou could visit one place in the world, where would you go?”
    Would you like to let another person respond? (yes/ no) no
    
    --- Poll Results ---
    曹富would like visit 长城in the world . 
    曹辉would like visit 家in the world . 

     证明responses[name] = response,这是一种将信息储存到列表中的形式 

    responses = {}
    name = 'ni'#Python中的key 不可以是 list类型  因为 list是可变的  不能被hash
    response = ['ta']
    responses[name] = response
    print(responses)
    
    输出:
    {
    'ni': ['ta']}
  • 相关阅读:
    uitableview中文排序问题
    跳转到指定页面popToViewController用法
    [__NSCFConstantString size]: unrecognized selector sent to instance 错误
    [NSThread sleepForTimeInterval:3.0];
    XCode 4.3 Unable to load persistent store UserDictionary.sqlite 以及 ios simulator failed to install the application
    ios 6.0模拟器页面调出pop窗口消失后无法使用键盘
    iOS真机测试,为Provisioning添加设备
    [IOS笔记]
    UITableView 滚动时使用reloaddata出现 crash'-[__NSCFArray objectAtIndex:]: index (1) beyond bounds (0)' Crash
    C# 自定义用户控件
  • 原文地址:https://www.cnblogs.com/caofu/p/8857136.html
Copyright © 2020-2023  润新知