zoukankan      html  css  js  c++  java
  • 萌新向Python数据分析及数据挖掘 第一章 Python基础 第七节 用户输入和while循环

    第一章 Python基础

    第七节 用户输入和while循环

    函数input()

    input() :暂停程序,等待用户输入文本并把文本存储在指定变量中。并接受一个参数,即要向用户显示的提示或说明。一个和电脑沟通了解你的需求的过程

    int() :使用input()函数时,输入的文本会被当成字符串,所以可以用这个函数将其化为int型。

    % :求模运算符。讲两个数相除并返回余数。

    下面举个例子:

    1 message = input("Tell me your name:")#让电脑告诉用户请输入你的姓名,并把输入的信息叫做message
    2 print(message) #打印用户输入的信息
    3 message = input("Tell me your years:") #让电脑告诉用户请输入你的年龄,并把输入的信息叫做message
    4 
    5 if int(message) >= 18:#如果变成整数形式的message大于等于18
    6     print('wow')#打印WOW
    7     print(int(message) % 6)#打印变成整数形式的message处以6的余数
    View Code
    
    

    while循环

    循环简介

    while循环不断运行,直到指定的条件不满足位置。要记住设计while循环的时候一定要确保你的程序是会停下来的,不然你的电脑会死机。例如:

    1 current_number = 1#把数字1叫做current_number
    2 while current_number <= 5: #当current_number小于等于5时,执行下面操作
    3     print(current_number)#打印current_number
    4     current_number += 1 # current_number加1
    5 #执行完后回到前面,再次审查current_number时候小于等于5,如果是,则继续执行下面操作,
    6 #直到current_number大于5,如果操作中是current_number减1,那么current_number小于等于5将永远成立,
    7 #你的电脑就会一直在打印数字
    View Code
    
    

    还可以让用户选择何时退出,只要把循环的条件由current_number <= 5改为message != 'quit',然后在循环语句里面添加message = input(prompt),即:

    1 current_number = 1#把数字1叫做current_number
    2 message = ""
    3 while message != 'quit':  #当message不等于“quit”的时候,执行下面操作
    4     message = input("Enter 'quit' to end the program or go on:') :") 
    5 #让电脑告诉用户请输入操作,输入‘quit’的推出,输入其他则程序继续运行,并把输入的信息叫做message
    6     print(current_number)#打印current_number
    7     current_number += 1  # current_number加1
    View Code

    
    

    这时候我们提示了一条消息:要么输入quit来结束程序,要么继续运行。当然我们还可以设置标志来决定循环的条件,比如利用布尔值True或者False

    退出循环

    break :不管条件测试结果如何,立即退出循环,不在运行循环中余下代码。

    1 prompt = "
    Please enter a city you have visited:"
    2 prompt += "
    (Enter 'quit' when you are finished.) "#让这两段文字连起来,叫做prompt
    3 while True: #当真的是真的的时候(永远正确,无其他条件的话程序将不会停止)
    4     city = input(prompt)#让用户输入,提示语为prompt
    5     if city == 'quit':#如果用户输入的是quit,那么
    6         break #程序停止
    View Code
    
    

    continue :跳出此次循环,即返回到循环开头,并判断循环条件是否满足来决定是否执行循环。

    1 current_number = 0#把数字0叫做current_number
    2 
    3 while current_number < 10: #当current_number小于10时,执行下面操作
    4     current_number += 1 # current_number加1
    5     if current_number % 2 == 0:#如果current_number除以2的余数为0(偶数)
    6         continue #忽略下面操作,回到前面重新审核current_number是否小于10
    7     print(current_number) #打印current_number,当是偶数时,这个打印操作就被跳过了
    View Code
    
    

    使用循环处理列表和字典

    for循环中不应修改列表,因为for循环中修改列表之后,python的遍历会出现问题。而要想遍历列表并修改,可以用while循环。下面举几个例子。

    在列表之间移动元素

     1 #创建待验证用户列表和一个已验证用户列表
     2 unconfirmed_ids = ['mike', 'lili', 'ace'] #一张笔记三行字 (一个列表),为未验证的用户们
     3 confirmed_ids = [] #一个空列表,为已经验证的用户们
     4 #验证每个用户并把其移动到已验证用户列表
     5 while unconfirmed_ids:#当未验证的用户们里面有东西时,那么
     6     current_id = unconfirmed_ids.pop()#从未验证的用户们最后撕出来一行,叫做当前用户
     7     print("Verifying id: " + current_id.title())#正在操作,当前用户名的首字母大写形式
     8     confirmed_ids.append(current_id) #把当前用户添加到已经验证的用户们
     9 #随着从未验证的用户们列表被全部移动到已经验证的用户们,循环结束
    10 #显示所有已验证id
    11 print("
    The following ids have been confirmed:")#打印“以下用户已经被验证”
    12 for confirmed_id in confirmed_ids:# 已经验证的用户们一个个拉出来打印首字母大写形式
    13     print(confirmed_id.title()) 
    View Code
    
    

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

    这样可以看看每一步是怎么删除的

    1 nums = ['1', '3', '5', '1', '6', '1', '7']
    2 print(nums)
    3 while '1' in nums: #当nums里面有“1”
    4     nums.remove('1')#删掉一个“1”,然后再次检查num是里面是否有“1”,有的话继续删,赶尽杀绝
    5     print(nums)
    6 print(nums)
    View Code
    
    

    使用用户输入来填充字典

    
    
     1 responses = {}#一沓空笔记叫做responses
     2 #设置一个标志Lj指出调查是否继续
     3 polling_active = True# 设置一个开关
     4 while polling_active:#当开关是开的时候
     5     #提示输入被调查者的名字和回答
     6     name = input("
    What is your name? ")
     7     response = input("Which mountain would you like to climb someday? ")
     8     #让用户输入姓名和用户想去爬哪座山,分别叫做name和response(单数)
     9     #将答卷存储在字典中
    10     responses[name] = response#在responses这个字典里面,用name为标签,response为内容填写
    11  #看看是否有人要参与调查
    12     repeat = input("Would you like to let another person respond? (yes/ no) ")
    13     #询问用户还有没有其他人要来接受采访
    14     if repeat == 'no':#如果答案是“no”
    15         polling_active = False#关掉开关,如果答案是yes(其实这里填啥都行,只要不是no),开关保持打开,
    16         #那么循环就继续执行
    17  #调查结束(开关关闭后)显示结果
    18 print("
    --- Poll Results ---")
    19 for name, response in responses.items():
    20     print(name + " would like to climb " + response + ".") 
    21 #最后把responses里面 标签和内容都打印出来
    View Code

    -

  • 相关阅读:
    使用jedis连接redis
    布隆过滤器redis缓存
    SQL与NOSQL
    Charles 移动端抓包工具,使用方法以及注意事项
    安装npm包的时候报错rollbackFailedOptional: verb npm-session
    You may need an appropriate loader to handle this file type.
    数组去重
    判断两个数组是否相等(包括数组里边的键值对是否相等)
    数组里的字符串转为数字
    背景色铺满整个屏幕
  • 原文地址:https://www.cnblogs.com/romannista/p/10317718.html
Copyright © 2011-2022 走看看