Python编程从入门到实践 | 用户输入和while循环
小职 2020-08-21 来源 : 阅读 745 评论 0

摘要:本文介绍了Python编程中用户输入和while循环,以及如何去使用用户输入以及while循环。

本文介绍了Python编程中用户输入和while循环,以及如何去使用用户输入以及while循环。

Python编程从入门到实践 | 用户输入和while循环


函数input()的工作原理


函数input( )让程序暂停运行,等待用户输入一些文本。函数input( )接受一个参数:即要向用户显示的提示或说明。

 

关于提示:可以在提示末尾增加一个空格,以此将提示与用户输入分开。当提示超过一行时,可将提示存储在一个变量中,再将该变量传递给函数input( )。


greeter.py


prompt = "If you tell us who you are, we can personalize the message you see."

prompt += "\nWhat is your name? "

name = input(prompt)

print("\nHello, " + name + "!")


使用函数input( )时,Python将用户输入解读为字符串。当需要输入视为数值时,可使用函数int( )将数字的字符串表示转换为数值表示。


rollercoaster.py


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

height = input("How tall are you, in inches? ")

height = int(height)
if height >= 36:    

    print("\nYou're tall enough to ride!")

else:   

     print("\nYou'll be able to ride when you're a little old.")


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


even_or_odd.py


# 求模运算符

number = input("Enter a number, and I'll tell you if it's even or odd: ")

number = int(number)

if number % 2 == 0:    

    print("\nThe number " + str(number) + " is even.")

else:    

    print("\nThe number " + str(number) + " is odd.")


while循环简介


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


counting.py


# 使用while循环

current_number = 1

while current_number <= 5:    

print(current_number)    

current_number += 1


while循环中可以定义一个退出值,让用户选择何时退出,只要用户输入的不是这个值,程序就接着运行。


parrot.py


# 让用户选择何时退出

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)


while循环中可以使用标志来判断程序是否继续运行。

 

关于标志:是一个用于判断整个程序是否处于活动状态的变量。程序在标志为True时继续运行,在标志为False时停止运行。


parrot.py


# 使用标志

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

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

    message = input(prompt)


   if message == 'quit':        

        active = False    

    else:        

        print(message)


要立即退出while循环,不再运行循环中余下的代码,也不管条件测试的结果如何,可使用break语句。


cities.py


# 使用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() + "!")


要返回到循环开头,并根据条件测试结果决定是否继续执行循环,可使用continue语句。


counting.py


# 在循环中使用

continuecurrent_number = 0

while current_number < 10:   

current_number += 1    

if current_number % 2 == 0:       

continue    

print(current_number)


当程序不小心无限循环时,可使用Ctrl+C关闭显示程序输出的终端窗口。


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


for循环是一种遍历列表的有效方式,但在for循环中不应修改列表,否则将导致Python难以跟踪其中的元素。要在遍历列表的同时对其进行修改,可使用while循环。通过将while循环同列表和字典结合起来使用,可收集、存储并组织大量输入。

 

1.在列表之间移动元素

confirmed_users.py


# 在列表之间移动元素# 

首先,创建一个待验证用户列表和一个用于存储已验证用户的空列表

unconfirmed_users = ['alice', 'brain', 'candace']confirmed_users = []
# 验证每个用户,直到没有未验证用户为止#

 将每个经过验证的列表都移到已验证用户列表中

while unconfirmed_users:    

current_user = unconfirmed_users.pop()
print("Verying user: " + current_user.title())   

confirmed_users.append(current_user)
# 显示所有已验证的用户

print("\nThe following users have been confirmed:")

for confirmed_user in confirmed_users:    

print(confirmed_user.title())

 

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

pets.py


# 删除包含特定值的所有列表元素

pets = ['dog', 'cat', 'dog', 'goldfish', 'cat', 'rabbit', 'cat']

print(pets)
while 'cat' in pets:    

pets.remove('cat')
print(pets)


3. 使用用户输入来填充字典

mountain_poll.py

# 使用用户输入来填充字典

responses = {}
# 设置一个标志,指出调查是否继续

polling_active = True
while polling_active:    

    # 提示输入被调查者的名字和回答   

name = input("\nWhat is your name? ")    

response = input("Which mountain would you like to climb someday? ")
   # 将答案存储在字典中    

responses[name] = response
   # 看看是否还有人要参与调查    

repeat = input("Would you like to let another person respond? (yes/ no) ")    

if repeat == 'no':        

polling_active = False



小结

在本章学习的内容:

如何在程序中使用input()来让用户提供信息;

如何处理文本和数字输入;

如何使用while循环让程序按用户的要求不断地运行;

多种控制while循环流程的方式:设置活动标志、使用break语句以及使用continue语句;

如何使用while循环在列表之间移动元素;

如何从列表中删除所有包含特定值的元素;

如何结合使用while循环和字典。


本文由职坐标整理发布,学习更多的相关知识,请关注职坐标IT知识库!

本文由 @小职 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程