Python学习-while循环&逻辑运算符
一、while循环,continue、break语句在while循环中的使用
1、while循环语句:
while 条件:
代码块
执行过程:判断条件是否为真,如果为真,执行代码块,继续下次循环,继续判断条件真假;如果条件为假,结束当前循环。
代码1:
while True:
print('Hello world')
执行上述代码,程序会持续运行。在实际编程时,很少使用。
代码2:
count = 1
while count <=10:
print(count)
count += 1
执行上述代码,会输出1到10。在实际编程中,这种方式经常使用。
举个一般的栗子:
执行代码 -> 判断条件 -> 条件为真,执行循环体(循环体中一般会有操作、改变判断条件用到的元素--改变初始值,True变为False等)--> 判断条件有变化 --> 判断条件变为假 --> 跳出当前循环(本层循环)
2、continue语句
设想有这样一种需求,循环输出数字1至数字10中的偶数,该怎么实现?此时continue语句就派上用场了
代码段:
count = 1
while count <= 10:
if count % 2 == 1: # 对2取余为1,即为奇数,执行if语句对应的代码块
count += 1
continue
print(count)
count += 1
执行结果:
2
4
6
8
10
[Finished in 0.0s]
continue语句作用:结束本次循环,继续下次循环。
即:如果执行到了continue语句,那么以上代码中的print(count) count+=1这两个语句不会执行,会继续下次循环,即跳到while后的count <= 10处,继续做判断。
3、break语句
再设想有这样一个简单的需要,让用户输入登录用户名,如果输入的用户名正确,提示有效用户,退出;如果输入错误,继续让用户输入登录用户名
代码片段:
user_in_db = 'jason'
while True:
user = input('Login name:')
if user == user_in_db:
print('Valid user name')
break
print('这句会执行吗')
print('Wrong user name, try again')
print('while同级代码块')
输出结果:
Login name:jason
Valid user name
while同级代码块
从执行结果可以看出,if判断条件为真,程序执行到break语句,while循环体中break的后续语句都没有执行,跳出while循环,执行后续同级代码块。
break语句作用:跳出当前循环(本层循环),不再进行while后的条件判断,继续执行后续同级代码块。
4、while...else语句
代码块1:
count = 1
while count <= 5:
# if count == 3:
# break
print(count)
count += 1
else:
print('while循环正常结束')
执行结果:
1
2
3
4
5
while循环正常结束
[Finished in 0.0s]
代码块2:
count = 1
while count <= 5:
if count == 3:
break
print(count)
count += 1
else:
print('while循环正常结束')
执行结果:
1
2
[Finished in 0.0s]
从代码块1和代码块2的执行结果可以看出,执行到break跳出的循环,不会执行else后的语句;正常循环结束的,会执行else后的语句。
说明:在 python 中,while … else 表示这样的意思,while 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 while 不是通过 break 跳出而中断的)的情况下执行,for … else 也是一样。
二、格式化输出
%s 字符串的占位符,后边给的参数是数字也可以
%d 数字的占位符号
代码片段:
name = 'jason'
age = 25
print('my name is %s' % name)
print("i'm %s years old" % age)
print("i'm %d years old" % age)
输出结果:
my name is jason
i'm 25 years old
i'm 25 years old
[Finished in 0.0s]
格式化输出还有一种format方法,个人也习惯用format的方法去格式化字符串,可以自行百度搜索了解一下。
三、Python中的逻辑运算符
(下方截图来自菜鸟教程,可以点击下方图片跳转)
这里说明一下这三个运算符的优先级:not > and > or
下面是练习实例,如果能很清楚的算出结果,那么逻辑运算这块没啥大问题。
1) 6 or 2 > 1
2) 3 or 2 > 1
3) 0 or 5 < 4
4) 5 < 4 or 3
5) 2 > 1 or 6
6) 3 and 2 > 1
7) 0 and 3 > 1
8) 2 > 1 and 3
9) 3 > 1 and 0
10) 3 > 1 and 2 or 2 < 3 and 3 and 4 or 3 > 2 Answer:
1)6 or True ==> 6 # 先处理比较运算符,再处理逻辑运算
2)3 or True ==> 3
3)0 or False ==> False
4)False or 3 ==> 3
5)True or 6 ==> True
6)3 and True ==> True
7)0 and True ==> 0
8)True and 3 ==> 3
9)True and 0 ==> 0
10)True and 2 or True and 3 and 4 or True -> 2 or 3 and 4 or True ==> 2
------以上是第二天的学习内容------
Python学习-while循环&逻辑运算符的更多相关文章
- Python学习笔记(Ⅱ)——循环/选择/函数
一.循环结构 python中提供了for循环和while循环两种操作,没有do……while语句. 1.for循环: 与其他语言中for循环的常见的写法如for (int i=0;i<10;i+ ...
- python学习之循环语句
编程语言中的循环语句,以循环判断达式是否成立为条件,若表达式成立则循环执行该表达式,若不成立则跳出当前执行执行语句且继续执行其后代码. 如下图所示. Python中提供以下循环方式 循环类型 描述 w ...
- python学习_循环结构 and 类型判断
# 循环结构 ### 循环结构(while) - 格式 ```python while 表达式: 语句块 ``` > 执行流程:当程序执行到while语句时,首先判断表达式的真假.若表达式的值为 ...
- Python学习-while循环语句
Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务.即重复性的做一件事情 语法形式如下: while 判断条件: 条件满足执行语句…… ...
- Python学习之循环--绕圈圈(蛇形盘)
效果图: 注意哦,右边多出来的一点不是程序有问题,是打印的时候我用的\t,但100,三个字符顶格的时候给顶出去的,我太懒了,不想再调输出格式了,就这么凑合看吧 实现代码: sum = int(inpu ...
- python学习06循环
'''while''''''while 布尔表达式:冒号不能省略''''''1+2+3+...+10'''i=1sum1=0while i<=10: sum1+=i i+=1print(sum1 ...
- python学习之循环语句的使用
循环语句主要有while和for循环两大类,接下来先看下while循环 1.while循环(python里没有do while循环语句) while 条件: 代码块 执行程序 2.for循环(可以取二 ...
- Python学习笔记-循环语句
While 循环语句 flag=False name = raw_input("请输入:"); numbers=['羊爸爸','羊妈妈','羊宝','牛宝'] while len( ...
- Python学习之==>循环
1.While循环 # 循环的时候是在重复执行循环体里面的东西 # 在循环体里面遇到break,立即结束循环,不管循环有没有完 # 在循环体里面遇到continue,那么就结束本次循环,继续进行下一次 ...
随机推荐
- Flink的Job启动JobManager端(源码分析)
通过前面的文章了解到 Driver将用户代码转换成streamGraph再转换成Jobgraph后向Jobmanager端提交 JobManager启动以后会在Dispatcher.java起来RPC ...
- 学习笔记之Java队列Queue中offer/add函数,poll/remove函数,peek/element函数的区别
队列是一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作. LinkedList类实现了Queue接口,因此我们可以把LinkedList当成Queue来用. Java中Que ...
- 【第一篇】spring boot 快速入门
1.开发环境 开发工具:IDEA2018.2.1 JDK:1.9 Maven : 3.3.9 操作系统:window 7 / window 10 2.项目结构 3.详细步骤 3.1 使用IDEA新建M ...
- Delphi - Windows系统下,Delphi调用API函数和7z.dll动态库,自动把文件压缩成.tar.gz格式的文件
项目背景 应欧美客户需求,需要将文件压缩成.tar.gz格式的文件,并上传给客户端SFTP服务器. 你懂的,7-Zip软件的显著特点是文件越大压缩比越高,在Linux系统上相当于我们Windows系统 ...
- 第6章 事务管理 6.1 spring事务
事务管理——原子性.一致性.隔离性.持久性 理解spring对事务管理的支持 Spring提供对编码式和声明式事务管理的支持.编码式事务允许用户在代码中精确定义事务的边界,而声明式事务(基于AOP,面 ...
- HDU-2018多校7th-1011-Swordsman 附杜教fread代码
HDU-6396 题意: 背景是打怪升级的故事,有k个不同属性的初始的能力值,每只怪物也有相同个数的能力值,你只能放倒k个能力值都比怪物大的,每放倒一个怪物,都可以得到相应的k个能力值. 思路: 根据 ...
- SDU暑期集训排位(5)
SDU暑期集训排位(5) A. You're in the Army Now 题意 类似选志愿.每个人有 mark,有优先级从高到低的志愿. 做法 定睛一看,鲨鼻题.然后 WA. 为什么会 WA 呢? ...
- 洛谷P1352没有上司的舞会+树形二维DP
传送门 题意:上司和直接下属,不能同时去一个聚会,问可邀请到的人的快乐值最大是多少: 参考:https://www.luogu.org/blog/mak2333/solution-p1352 思路: ...
- CF940B Our Tanya is Crying Out Loud
Our Tanya is Crying Out Loud time limit per test 1 second memory limit per test 256 megabytes input ...
- HTML5基本介绍
HTML5简介 HTML是互联网上应用最广泛的标记语言.HTML文件就是普通文本+HTML标记,而不同的HTML标记能表示不同的效果.(简单的说HTML是超文本标记语言) HTML5草案的前身名为 W ...