python入门学习:6.用户输入和while循环

关键点:输入、while循环

6.1 函数input()工作原理6.2 while循环简介6.3 使用while循环处理字典和列表

6.1 函数input()工作原理

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

1message = input("Tell me something, and I will repeat it back to you:")
2print(message)   #返回输入的值

6.1.1 使用int()获取数值输入
  使用函数input()时,python将用户输入解读为字符串。

 1age = input("How old are you? ")
2print(age)                        #输入age = '21'
3if age > 18 :                     #字符串不能和整型比较
4    print("you are old")
5else:
6    print("you are too young")
7
8How old are you? 23
923
10Traceback (most recent call last):
11  File "chapter6.py", line 6, in <module>
12    if age > 18 :
13TypeError: unorderable types: str() > int()

  通过int()函数将获取的字符串转换为整型

 1age = input("How old are you? ")
2age = int(age)
3print(age)                        
4if age > 18 :                    
5    print("you are old")
6else:
7    print("you are too young")
8How old are you? 23
923
10you are old

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

14 % 3
21     #余数为1
35 % 3
42     #余数为2
56 % 3
60     #余数为0

6.2 while循环简介

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

1current_number = 1
2while current_number <=5:
3    print(current_number)
4    current_number +=1

6.2.2 让用户选择何时退出
  可使用while循环让程序在用户愿意时不断的运行,通过用户输入控制退出

1prompt = "\nTell me something,and I will repeat it back to you:"
2prompt +="\nEnter 'quit' to end the program.\n"
3message = ""
4while message != 'quit':
5    message = input(prompt)
6    if message != 'quit':
7        print(message)

6.2.3 使用标志
  有时候,在要求许多条件都满足才继续运行程序,可以定义一个变量,用于判断程序是否处于活动状态,这个变量被称为标志,充当的程序的交通信号灯。

1active = True
2while active:
3    message = input(prompt)
4    if message == 'quit'
5        active = False
6    else:
7        print(message)

6.2.4 使用break退出循环
  使用关键字break可以立即结束当前循环

1prompt = "\nPlease enter the name of a city you have visited:"
2prompt+= "\n(Enter 'quit' when you are finished.) "
3while True:
4    city = input(prompt)
5    if city == 'quit'
6        break;
7    else:
8        print("I'd love to go to " + city.title() +"!")

6.2.5 在循环中使用continue
  使用continue结束本次循环,返回当循环开始。

1current_number = 0;
2while current_number < 10:
3    current_number +=1
4    if current_number %2 == 0:
5        continue
6    print(current_number)

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

  for循环是一种遍历列表的有效方式,但是在for循环中不应该修改列表,否则将导致python难以跟踪其元素。要在遍历时同时修改列表,可使用while循环。
6.3.1 在列表之间移动元素
  假设有一个列表,其中包含新注册但还未验证的网站用户;验证用户后,如何将它们转移到另一个已验证的用户列表中呢?

 1unconfirmed_users = ['alice','brain','candace']
2confirmed_users = []
3while unconfirmed_users:
4    current_user = unconfirmed_users.pop()
5    print("Verfying user: "+ current_user.title())
6    confirmed_users.append(current_user)
7#显示所有已经验证用户
8print("\nThe following users have been confirmed:")
9for confirmed_user in confirmed_users:
10    print(confirmed_user.title())

6.3.2 删除包含特定值的所有列表元素
  删除一个列表中多个重复元素可使用while循环

1pet = ['dog','cat','dog','goldfish','cat','rabbit','cat']
2print(pets)
3while 'cat' in pets:
4    pets.remove('cat')
5print(pets)

python入门学习:6.用户输入和while循环的更多相关文章

  1. Python编程从入门到实践笔记——用户输入和while循环

    Python编程从入门到实践笔记——用户输入和while循环 #coding=utf-8 #函数input()让程序暂停运行,等待用户输入一些文本.得到用户的输入以后将其存储在一个变量中,方便后续使用 ...

  2. python入门(6)输入和输出

    python入门(6)输入和输出 输出 >>> print 'hello, world' >>> print 'The quick brown fox', 'jum ...

  3. Python入门学习:1.变量和简单的数据类型

    python入门学习:1.变量和简单的数据类型 关键点:变量.字符串.数字 1.1 变量的命名和使用1.2 字符串1.3 数字1.4 注释 1.1 变量的命名和使用   变量,顾名思义是一个可变的量, ...

  4. python之路:用户输入(一)

    python之路:用户输入(一) 好了,现在我学了点博客的用法,现在不会像以前的那么土了.好吧,不多说,我要讲课了. 今天,我会用情景实例给大家说这个用户输入. 情景是:你是IT教育的python带头 ...

  5. python入门学习:9.文件和异常

    python入门学习:9.文件和异常 关键点:文件.异常 9.1 从文件中读取数据9.2 写入文件9.3 异常9.4 存储数据 9.1 从文件中读取数据 9.1.1 读取整个文件  首先创建一个pi_ ...

  6. python入门学习:8.类

    python入门学习:8.类 关键点:类 8.1 创建和使用类8.2 使用类和实例8.3 继承8.4 导入类 8.1 创建和使用类   面向对象编程是最有效的软件编写方法之一.在面向对象编程中,你编写 ...

  7. python入门学习:7.函数

    python入门学习:7.函数 关键点:函数 7.1 定义函数7.2 传递实参7.3 返回值7.4 传递列表7.5 传递任意数量的实参7.6 将函数存储在模块中 7.1 定义函数   使用关键字def ...

  8. python入门学习:5.字典

    python入门学习:5.字典 关键点:字典 5.1 使用字典5.2 遍历字典5.3 嵌套 5.1 使用字典   在python中字典是一系列键-值对.每个键都和一个值关联,你可以使用键来访问与之相关 ...

  9. python入门学习:4.if语句

    python入门学习:4.if语句 关键点:判断 4.1 一个简单的测试4.2 条件测试4.3 if语句 4.1 一个简单的测试   if语句基本格式如下,注意不要漏了冒号 1if 条件 :2     ...

随机推荐

  1. 大数据Spark与Storm技术选型

    先做一个对比:   对比点 Storm Spark Streaming 实时计算模型 纯实时,来一条数据,处理一条数据 准实时,对一个时间段内的数据收集起来,作为一个RDD,再处理 实时计算延迟度 毫 ...

  2. ajax知识点

    什么是AJAX? AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 不是新的编程语言,而是一种使用现有标准的新方法. ...

  3. nodeJs express mongodb 建站(mac 版)

    基本环境 homebrew.node.npm.express.mongodb 1.node .npm : (1)辅助工具:homebrew安装(mac下一个软件管理工具,相当于Red hat的yum, ...

  4. 下载使用前端开发工具sublime,并汉化

    官网:www.sublimetext.com 汉化流程:安装package control 1.打开“https://packagecontrol.io/installation”,先下载“packa ...

  5. 洛谷P4213 Sum(杜教筛)

    题目描述 给定一个正整数N(N\le2^{31}-1)N(N≤231−1) 求ans_1=\sum_{i=1}^n\phi(i),ans_2=\sum_{i=1}^n \mu(i)ans1​=∑i=1 ...

  6. 实现DevOps需要的工具

    硬性要求:工具上的准备 代码管理(SCM):GitHub.GitLab.BitBucket.SubVersion 构建工具:Ant.Gradle.maven 自动部署:Capistrano.CodeD ...

  7. Apache Beam WordCount编程实战及源码解读

    概述:Apache Beam WordCount编程实战及源码解读,并通过intellij IDEA和terminal两种方式调试运行WordCount程序,Apache Beam对大数据的批处理和流 ...

  8. 我喜欢 Google Flutter

    在 Google I/O ’17 上,Google 向我们介绍了 Flutter —— 一款新的用于创建移动应用的开源库. 正如你所想的那样,Flutter 是能够帮助创建拥有漂亮 UI 界面的跨平台 ...

  9. Android 与Java 进程退出 killProcess与System.exit

    android所有activity都在主进程中,在清单文件Androidmanifest.xml中可以设置启动不同进程,Service需要指定运行在单独进程?主进程中的主线程?还是主进程中的其他线程? ...

  10. [Android][Framework] 添加系统服务

    新博客地址 http://wossoneri.github.io/2018/09/15/[Android][Framework]create-system-service/ 做系统开发,有时候需要自己 ...