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. Netty实战三之Netty的组件和设计

    有关Netty,我们可以从两个视角来讨论Netty:类库的视角以及框架的视角,对于使用Netty编写高效的.可重用的和可维护的代码来说,两者缺一不可. Netty解决了两个响应的关注领域,可以大致标志 ...

  2. C#设计模式之十六观察者模式(Observer Pattern)【行为型】

    一.引言 今天是2017年11月份的最后一天,也就是2017年11月30日,利用今天再写一个模式,争取下个月(也就是12月份)把所有的模式写完,2018年,新的一年写一些新的东西.今天我们开始讲“行为 ...

  3. Laravel篇之Laravel的安装及使用

      想搭建一个基于Lavarel和vuejs的个人网站,使用git推送到github存储,千里之行,始于足下,首先要做的用composer来下载laravel框架,并成功运行. 一.使用compose ...

  4. JUnit4注解

    今天学习了下,mybatis中开发dao的方法,用到了JUnit4进行单元测试, 将JUnit4中的注解总结了下,供大家参考学习: JUnit 4 开始使用 Java 5 中的注解(annotatio ...

  5. php的TS和NTS的区别

    ts(Thread-Safety)即线程安全,多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他 线程不能进行访问直到该线程读取完,其他线程才可使用.不会出现数据不一致或者数 ...

  6. 用ajax对数据进行删除和查看

    删除和查看详情操作的共同语句:就是怎么显示表? 1.在主体中写表的开头行,想要显示的内容,并且加载数据也要显示的地方也建张表 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 & ...

  7. NDK中使用pthread多线程中自己写的一个BUG

    在使用pthread进行NDK中的多线程开发时,自己写了一个BUG, void *darkGrayThread(void *args) { ThreadParam *param = (ThreadPa ...

  8. Elasticsearch Elasticsearch入门指导

    Elasticsearch入门指导 By:授客 QQ:1033553122 1. 开启elasticsearch服务器 1 2. 基本概念 2 <1> 集群(Cluster) 2 < ...

  9. Android为TV端助力 Service 两种启动方式的区别

    服务不能自己运行,需要通过调用Context.startService()或Context.bindService()方法启动服务.这两个方法都 可以启动Service,但是它们的使用场合有所不同.使 ...

  10. ReactNative调研结果

    React Native相关调研总结 一.概要 React Native - 使用React开发世界一流的原生应用: 使用JavaScript和React(对JS有一定扩展)作为开发语言: React ...