zoukankan      html  css  js  c++  java
  • 用户输入和while循环

      学习如何接受用户输入,例如:假设有人要判断自己是否到了投票的年龄,要编写回答这个问题的程序,就需要知道用户的年龄,这样才能给出答案。因此,这种程序需要让用户输入年龄,再将其与投票年龄进行比较,以判断用户是否到了投票的年龄,再给出答案。为此,我们需要使用函数input()。

      1、函数input()的工作原理

      函数input()让程序暂停运行,等待用户输入一些文本。获取用户输入后,Python将其存储在一个变量中,以方便我们使用。

       例如,下面的程序让用户输入一些文本,再将这些文本呈现给用户:

      函数input()接受一个参数:即要向用户显示的提示或说明,让用户知道该如何做。在这个示例中,Python运行第一行代码时,用户将看到提示 Tell me something ,and I will repeat it back to you:。程序等待用户输入,并在用户按回车键后继续运行。输入存储在变量message中,接下来的print(message)将输入呈现给用户:

    • 编写清晰的程序

       每当我们使用函数input()时,都应指定清晰而易于明白的提示,准确地指出我们希望用户提供什么样的信息,指出用户输入任何信息的提示都行,如下所示:

       有时候,提示可能超过一行,例如,我们可能需要指出获取特定输入的原因。在这种情况下,可能提示存储在一个变量中,再将该变量传递给函数input()。这样,即便提示超过一行,input()语句也非常清晰。

      此例创建了一种多行字符串的方式。第一行将消息的前半部分存储在变量prompt中,在第二行中,运算符+=在存储在prompt中的字符串末尾附加一个字符串。

    •  使用int()来获取数值输入

       使用函数input()时,Python将用户输入解读为字符串。

      用户输入的是数字21,但我们请求Python提供变量age的值时,它返回的是‘21’,即用户输入的数值的字符串表示。如果我们只想打印输入,这没有问题,但如果我们试图将输入作为数字使用,就会引发错误:

      因为它无法将字符串和整数进行比较,即不能将存储在age中的字符串‘21’与数值18进行比较。为了解决这个问题,可以使用函数int(),他让Python将输入视为数值。函数int()将数字的字符串表示转换为数值表示,如下:

    • 求模运算符

       处理数值信息时,求模运算符(%)是一个很有用的工具,它将两个数相除并返回余数:

      求模运算符不会指出一个数是另一个数的多少倍,而只能指出余数是多少。

       如果一个数可被另一个数整除,余数就为0,因此求模运算符将返回0。我们可以利用这一点来判断一个数是奇数还是偶数:

    2、while循环简介

       for循环用于针对集合中的每个元素的一个代码块,而while循环不断地运行,直到指定的条件不满足为止。

    • 使用while循环

      我们可以使用while循环来数数,例如,下面的while循环从1数到5:

      在第一行,我们将current_number设置为1,从而指定从1开始数。接下来的while循环被设置为:只要current_number小于或等于5,就接着运行这个循环。循环中的代码打印current_number的值,再使用代码current_number+=1(代码current_number=current_number+1)将其值加1。

      只要满足条件current_number<=5,Python就接着运行这个循环。由于1小于5,因此Python打印1,并将current_number加1,使其为2;由于2小于5,因此Python打印2,并将current_number加1,使其为3,以此类推。一旦current_number大于5,循环就将停止。整个程序也将到此结束。

       我们每天使用的程序很可能就包含while循环。例如,游戏使用while循环,确保在玩家想玩时不断运行,并在玩家想退出时停止运行。

    •  让用户选择何时退出

       可使用while循环让程序在用户愿意时不断地运行,如下面的程序所示。我们在其中定义了一个退出值,只要用户输入的不是这个值,程序就接着运行。

      首先,我们定义了一条提示信息,告诉用户他有两个选择:要么输入一条消息,要么输入退出值(这里为quit)。接下来,我们创建了一个变量message,用于存储用户输入的值。我们将变量message的初始值设置为空字符串‘’,让Python首次执行while代码行时有可供检查的东西。Python首次执行while语句时,需要将message的值与‘quit’进行比较,但此时用户还没有输入。如果没有可供比较的东西,Python将无法继续运行程序。为解决这个问题,我们必须给变量message指定一个初始值。虽然这个初始值只是一个空字符串,但符合要求,让Python能够执行while循环所需的比较。只要message的值不是‘quit’,这个循环就会不断运行。

      首次遇到这个循环时,message是一个空字符串,因此Python进入这个循环,执行到代码行message=input(prompt)时,Python显示提示消息,并等待用户的输入。不管用户输入是什么

  • 相关阅读:
    HDU 5115 Dire Wolf (区间DP)
    HDU 4283 You Are the One(区间DP(最优出栈顺序))
    ZOJ 3469 Food Delivery(区间DP好题)
    LightOJ 1422 Halloween Costumes(区间DP)
    POJ 1651 Multiplication Puzzle(区间DP)
    NYOJ 石子合并(一)(区间DP)
    POJ 2955 Brackets(括号匹配一)
    POJ 1141 Brackets Sequence(括号匹配二)
    ZOJ 3537 Cake(凸包+区间DP)
    Graham求凸包模板
  • 原文地址:https://www.cnblogs.com/haohanTL/p/10939267.html
Copyright © 2011-2022 走看看