python编程:从入门到实践 第7章

来源:互联网 发布:太仓cnc编程招聘 编辑:程序博客网 时间:2024/06/15 14:24

第7章 用户输入和while循环

1.函数input( )的工作原理:

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

2.使用int( )来获取数值输入:

使用input( )时,Python将用户输入解读为字符串;int()将用户输入转换为数值。

3.求模运算符:

求模运算符 %)是一个很有用的工具,它将两个数相除并返回余数。

4.使用while循环

例:current_number = 1

    while current_number <= 5:

       print(current_number)

       current_number += 1

(1)让用户选择何时退出

prompt = "\nTell me something, and I will repeat it back to you:"

prompt += "\nEnter 'quit' to end the program. "

message = ""

while message != 'quit':

   message = input(prompt)

   print(message)

解析:要么输入一条消息,要么输入退出值(这里为'quit' )。我们创建了一个变量——message,用于存储用户输入的值。我们将变量message 的初始值设置为空字符串"" ,让Python首次执行while 代码行时有可供检查的东西。Python首次执行while 语句时,需要将message 的值与'quit' 进行比较,但此时用户还没有输入。如果没有可供比较的东西,Python将无法继续运行程序。Message的值在初始时是个空格。

这个程序很好,唯一美中不足的是,它将单词'quit' 也作为一条消息打印了出来。为修复这种问题,只需使用一个简单的if 测试:

prompt = "\nTell me something, and I will repeat it back to you:"

prompt += "\nEnter 'quit' to end the program. "

message = ""

while message != 'quit':

   message = input(prompt)

   if message != 'quit':

   print(message)

(2)使用标志

让程序在标志为True 时继续运行,并在任何事件导致标志的值为False 时让程序停止运行。

prompt = "\nTell me something, and I will repeat it back to you:"

prompt += "\nEnter 'quit' to end the program. "

active = True

while active:

   message = input(prompt)

  if message == 'quit':

      active = False

  else:

     print(message)

(3)使用break退出循环

要立即退出while 循环,不再运行循环中余下的代码,也不管条件测试的结果如何,可使用break 语句。break 语句用于控制程序流程,可使用它来控制哪些代码行将执行,哪些代码行不执行,从而让程序按你的要求执行你要执行的代码。

例:

prompt = "\nPlease enter the name of a city you have visited:"

prompt += "\n(Enter 'quit' when you are finished.) "

while True:

    city = input(prompt)

    if city == 'quit':

       break

    else:

      print("I'd love to go to " + city.title() + "!")

解析:以while True 打头的循环将不断运行,直到遇到break 语句。这个程序中的循环不断输入用户到过的城市的名字,直到他输入'quit' 为止。用户输入'quit'后,将执行break 语句,导致Python退出循环。

(4)while循环中使用continue

要返回到循环开头,并根据条件测试结果决定是否继续执行循环,可使用continue 语句,它不像break 语句那样不再执行余下的代码并退出整个循环。例如,来看一个从1数到10,但只打印其中偶数的循环:

current_number = 0

while current_number < 10:

    current_number += 1

    if current_number % 2 == 0:

       continue

   print(current_number)

current_number % 2不等于0时,执行print(current_number)。

5.使用while 循环来处理列表和字典

(1)在列表之间移动元素

(2)删除包含特定值的所有列表元素

 使用remove()括号中指定要删除的元素。

(3)使用用户输入来填充字典

     可使用while循环提示用户输入任意数量的信息。

 

原创粉丝点击