一、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循环&逻辑运算符的更多相关文章

  1. Python学习笔记(Ⅱ)——循环/选择/函数

    一.循环结构 python中提供了for循环和while循环两种操作,没有do……while语句. 1.for循环: 与其他语言中for循环的常见的写法如for (int i=0;i<10;i+ ...

  2. python学习之循环语句

    编程语言中的循环语句,以循环判断达式是否成立为条件,若表达式成立则循环执行该表达式,若不成立则跳出当前执行执行语句且继续执行其后代码. 如下图所示. Python中提供以下循环方式 循环类型 描述 w ...

  3. python学习_循环结构 and 类型判断

    # 循环结构 ### 循环结构(while) - 格式 ```python while 表达式: 语句块 ``` > 执行流程:当程序执行到while语句时,首先判断表达式的真假.若表达式的值为 ...

  4. Python学习-while循环语句

    Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务.即重复性的做一件事情 语法形式如下: while 判断条件: 条件满足执行语句…… ...

  5. Python学习之循环--绕圈圈(蛇形盘)

    效果图: 注意哦,右边多出来的一点不是程序有问题,是打印的时候我用的\t,但100,三个字符顶格的时候给顶出去的,我太懒了,不想再调输出格式了,就这么凑合看吧 实现代码: sum = int(inpu ...

  6. python学习06循环

    '''while''''''while 布尔表达式:冒号不能省略''''''1+2+3+...+10'''i=1sum1=0while i<=10: sum1+=i i+=1print(sum1 ...

  7. python学习之循环语句的使用

    循环语句主要有while和for循环两大类,接下来先看下while循环 1.while循环(python里没有do while循环语句) while 条件: 代码块 执行程序 2.for循环(可以取二 ...

  8. Python学习笔记-循环语句

    While 循环语句 flag=False name = raw_input("请输入:"); numbers=['羊爸爸','羊妈妈','羊宝','牛宝'] while len( ...

  9. Python学习之==>循环

    1.While循环 # 循环的时候是在重复执行循环体里面的东西 # 在循环体里面遇到break,立即结束循环,不管循环有没有完 # 在循环体里面遇到continue,那么就结束本次循环,继续进行下一次 ...

随机推荐

  1. TomatoLog-1.1.0实现ILoggerFactory

    TomatoLog TomatoLog 是一个基于 .NETCore 平台的产品. The TomatoLog 是一个中间件,包含客户端.服务端,非常容易使用和部署. 客户端实现了ILoggerFac ...

  2. 2019年 iPad无法充电

    2019年 iPad无法充电  到售后网点检测没毛病,可能是apple产品做了低温保护逻辑机制低温无法充电,或者说是冬天温度跟iPad电池充电温度要求不符.各位有遇到情况的可以看看是不是这种问题,这问 ...

  3. go语言实现分布式对象存储系统之单体对象存储

    对象存储 基本概念 主流存储类型分为三种:块存储.文件存储以及对象存储 NAS(文件存储):Network Attached storage,提供了存储功能和文件系统的网络服务器,客户端可以访问NAS ...

  4. babel-loader与babel-core的版本对应关系

    babel-loader 8.x对应babel-core 7.xbabel-loader 7.x对应babel-core 6.x如何解决1. 卸载旧的babel-corenpm un babel-co ...

  5. C#开发BIMFACE系列11 服务端API之源文件删除

    系列目录     [已更新最新开发文章,点击查看详细] 通过BIMFACE控制台或者调用服务接口上传文件成功后,如果不再需要该文件,则可以通过BIMFACE平台提供的“源文件删除”服务接口删除具体的文 ...

  6. 同步机制之一--Synchronized,以及此机制下的锁的本质和种类

    Java中,为了实现同步的操作临界区,线程在执行临界区的代码时,需要获得某个对象的锁.本文介绍获得对象的锁的方法之一----Synchronized关键字. Synchronized关键字的用法 Cl ...

  7. B-xor_2019牛客暑期多校训练营(第四场)

    题意 给出n个数组(每组数个数不定),m个询问 l, r, x 序号在区间\([l,r]\)的每个数组是否都可以取出任意个数异或出x 题解 判断一个数组能否异或出x,是简单的线性基问题 判断多个线性基 ...

  8. P2805 [NOI2009]植物大战僵尸 + 最大权闭合子图 X 拓扑排序

    传送门:https://www.luogu.org/problemnew/show/P2805 题意 有一个n * m的地图,你可以操纵僵尸从地图的右边向左边走,走的一些地方是有能量值的,有些地方会被 ...

  9. codeforces 816 B. Karen and Coffee(思维)

    题目链接:http://codeforces.com/contest/816/problem/B 题意:给出n个范围,q个查询问查询区间出现多少点在给出的n个范围中至少占了k次 题解:很显然的一道题目 ...

  10. 牛客多校第五场 F take 期望转化成单独事件概率(模板) 树状数组

    链接:https://www.nowcoder.com/acm/contest/143/F来源:牛客网 Kanade has n boxes , the i-th box has p[i] proba ...