Python While循环语句实例演示及原理解析


Posted in Python onJanuary 03, 2020

这篇文章主要介绍了Python While循环语句实例演示及原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。其基本形式为:

while 判断条件:
执行语句……

执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。

当判断条件假false时,循环结束。

执行流程图如下:

Python While循环语句实例演示及原理解析

Python while 语句执行过程

Python While循环语句实例演示及原理解析

实例:

#!/usr/bin/python
 count = 0
 while (count < 9):  print 'The count is:', count  count = count + 1 print "Good bye!"

以上代码执行输出结果:

The count is: 0
The count is: 1
The count is: 2
The count is: 3
The count is: 4
The count is: 5
The count is: 6
The count is: 7
The count is: 8
Good bye!

while 语句时还有另外两个重要的命令 continue,break 来跳过循环,continue 用于跳过该次循环,break 则是用于退出循环,此外"判断条件"还可以是个常值,表示循环必定成立,具体用法如下:

# continue 和 break 用法
i = 1
while i < 10:    i += 1   if i%2 > 0:   # 非双数时跳过输出
    continue
  print i     # 输出双数2、4、6、8、10

i = 1
while 1:      # 循环条件为1必定成立
  print i     # 输出1~10
  i += 1
  if i > 10:   # 当i大于10时跳出循环
    break

无限循环

如果条件判断语句永远为 true,循环将会无限的执行下去,如下实例:

#coding=utf-8
#!/usr/bin/python

var = 1
while var == 1 : # 该条件永远为true,循环将无限执行下去
  num = raw_input("Enter a number :")
  print "You entered: ", num

print "Good bye!"

以上实例输出结果:

Enter a number :20
You entered: 20
Enter a number :29
You entered: 29
Enter a number :3
You entered: 3
Enter a number between :Traceback (most recent call last):
 File "test.py", line 5, in <module>
  num = raw_input("Enter a number :")
KeyboardInterrupt

注意:以上的无限循环你可以使用 CTRL+C 来中断循环。

循环使用 else 语句

在 python 中,for … else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。

#!/usr/bin/python

count = 0
while count < 5:
  print count, " is less than 5"
  count = count + 1
else:
  print count, " is not less than 5"

以上实例输出结果为:

0 is less than 5
1 is less than 5
2 is less than 5
3 is less than 5
4 is less than 5
5 is not less than 5

简单语句组

类似if语句的语法,如果你的while循环体中只有一条语句,你可以将该语句与while写在同一行中, 如下所示:

#!/usr/bin/python
flag = 1
while (flag): print 'Given flag is really true!'
print "Good bye!"

注意:以上的无限循环你可以使用 CTRL+C 来中断循环。

While循环语句实例

猜拳小游戏

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import random
while 1:
  s = int(random.randint(1, 3))
  if s == 1:
    ind = "石头"
  elif s == 2:
    ind = "剪子"
  elif s == 3:
    ind = "布"
  m = raw_input('输入 石头、剪子、布,输入"end"结束游戏:')
  blist = ['石头', "剪子", "布"]
  if (m not in blist) and (m != 'end'):
    print "输入错误,请重新输入!"
  elif (m not in blist) and (m == 'end'):
    print "\n游戏退出中..."
    break
  elif m == ind :
    print "电脑出了: " + ind + ",平局!"
  elif (m == '石头' and ind =='剪子') or (m == '剪子' and ind =='布') or (m == '布' and ind =='石头'):
    print "电脑出了: " + ind +",你赢了!"
  elif (m == '石头' and ind =='布') or (m == '剪子' and ind =='石头') or (m == '布' and ind =='剪子'):
    print "电脑出了: " + ind +",你输了!"

以上实例输出结果为:

输入 石头、剪子、布,输入"end"结束游戏:石头
 电脑出了: 石头,平局!
 输入 石头、剪子、布,输入"end"结束游戏:石头  
 电脑出了: 剪子,你赢了!
 输入 石头、剪子、布,输入"end"结束游戏:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python的自动化部署模块Fabric的安装及使用指南
Jan 19 Python
Python 实现在文件中的每一行添加一个逗号
Apr 29 Python
python 动态调用函数实例解析
Oct 21 Python
在Python中使用MySQL--PyMySQL的基本使用方法
Nov 19 Python
tensorboard实现同时显示训练曲线和测试曲线
Jan 21 Python
Python实现链表反转的方法分析【迭代法与递归法】
Feb 22 Python
python目标检测给图画框,bbox画到图上并保存案例
Mar 10 Python
如何实现在jupyter notebook中播放视频(不停地展示图片)
Apr 23 Python
详解Python yaml模块
Sep 23 Python
pip/anaconda修改镜像源,加快python模块安装速度的操作
Mar 04 Python
用Python制作灯光秀短视频的思路详解
Apr 13 Python
Python turtle编写简单的球类小游戏
Mar 31 Python
在Pytorch中计算卷积方法的区别详解(conv2d的区别)
Jan 03 #Python
Python综合应用名片管理系统案例详解
Jan 03 #Python
Python tkinter常用操作代码实例
Jan 03 #Python
PyTorch中的padding(边缘填充)操作方式
Jan 03 #Python
nginx搭建基于python的web环境的实现步骤
Jan 03 #Python
Python如何使用字符打印照片
Jan 03 #Python
Pytorch.nn.conv2d 过程验证方式(单,多通道卷积过程)
Jan 03 #Python
You might like
PHP基于工厂模式实现的计算器实例
2015/07/16 PHP
使用JQuery和s3captche实现一个水果名字的验证
2009/08/14 Javascript
jquery判断字符输入个数(数字英文长度记为1,中文记为2,超过长度自动截取)
2010/10/15 Javascript
jQuery简单实现banner图片切换
2014/01/02 Javascript
Javascript无参数和有参数类继承问题解决方法
2015/03/02 Javascript
JavaScript中property和attribute的区别详细介绍
2015/03/03 Javascript
JS排序方法(sort,bubble,select,insert)代码汇总
2016/01/30 Javascript
详解js中Json的语法与格式
2016/11/22 Javascript
jquery中绑定事件的异同
2017/02/28 Javascript
Node.js连接mongodb实例代码
2017/06/06 Javascript
node+vue实现用户注册和头像上传的实例代码
2017/07/20 Javascript
vue init webpack 建vue项目报错的解决方法
2018/09/29 Javascript
ES7之Async/await的使用详解
2019/03/28 Javascript
express + jwt + postMan验证实现持久化登录
2019/06/05 Javascript
JS多个表单数据提交下的serialize()应用实例分析
2019/08/27 Javascript
微信小程序进入广告实现代码实例
2019/09/19 Javascript
vue中的.$mount('#app')手动挂载操作
2020/09/02 Javascript
用实例分析Python中method的参数传递过程
2015/04/02 Python
Python实现基于权重的随机数2种方法
2015/04/28 Python
六个窍门助你提高Python运行效率
2015/06/09 Python
Python中文竖排显示的方法
2015/07/28 Python
Python实现屏幕截图的代码及函数详解
2016/10/01 Python
对python打乱数据集中X,y标签对的方法详解
2018/12/14 Python
python [:3] 实现提取数组中的数
2019/11/27 Python
python爬虫实例之获取动漫截图
2020/05/31 Python
Selenium Webdriver元素定位的八种常用方式(小结)
2021/01/13 Python
师范大学应届生求职信
2013/11/21 职场文书
摄影助理岗位职责
2014/02/07 职场文书
幼儿园元旦亲子活动方案
2014/02/17 职场文书
会计专业毕业生自荐书
2014/06/25 职场文书
医德医魂心得体会
2014/09/11 职场文书
四风批评与自我批评发言稿
2014/10/14 职场文书
2014年招商工作总结
2014/11/22 职场文书
解决Goland 同一个package中函数互相调用的问题
2021/05/06 Golang
Python如何导出导入所有依赖包详解
2021/06/08 Python
详解Python类和对象内容
2021/06/22 Python