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通过文件头判断文件类型
Oct 30 Python
Python实现的文本简单可逆加密算法示例
May 18 Python
python回调函数中使用多线程的方法
Dec 25 Python
Python中max函数用于二维列表的实例
Apr 03 Python
Python wxpython模块响应鼠标拖动事件操作示例
Aug 23 Python
Puppeteer使用示例详解
Jun 20 Python
如何用Python做一个微信机器人自动拉群
Jul 03 Python
python基于Selenium的web自动化框架
Jul 14 Python
python opencv根据颜色进行目标检测的方法示例
Jan 15 Python
python实现批量修改文件名
Mar 23 Python
详解Python中Pyyaml模块的使用
Oct 08 Python
python和anaconda的区别
May 06 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
IIS7.X配置PHP运行环境小结
2011/06/09 PHP
浅谈apache和nginx的rewrite的区别
2013/02/22 PHP
PHP GD库相关图像生成和处理函数小结
2016/09/30 PHP
IE8 引入跨站数据获取功能说明
2008/07/22 Javascript
JavaScript 原型继承之构造函数继承
2011/08/26 Javascript
web基于浏览器的本地存储方法应用
2012/11/27 Javascript
关于jquery的多个选择器的使用示例
2013/10/18 Javascript
图片放大镜jquery.jqzoom.js使用实例附放大镜图标
2014/06/19 Javascript
谈一谈js中的执行环境及作用域
2016/03/30 Javascript
关于Jquery中的事件绑定总结
2016/10/26 Javascript
使用vue.js2.0 + ElementUI开发后台管理系统详细教程(二)
2017/01/21 Javascript
js实现功能比较全面的全选和多选
2017/03/02 Javascript
解析jquery easyui tree异步加载子节点问题
2017/03/08 Javascript
Vue动态创建注册component的实例代码
2019/06/14 Javascript
Layui实现带查询条件的分页
2019/07/27 Javascript
微信小程序 wx:for遍历循环使用实例解析
2019/09/09 Javascript
[04:29]【TI9采访】OG.N0tail在胜者组决赛后接受采访
2019/08/25 DOTA
使用Python获取Linux系统的各种信息
2014/07/10 Python
详解Python中的Descriptor描述符类
2016/06/14 Python
python rsync服务器之间文件夹同步脚本
2019/08/29 Python
python numpy之np.random的随机数函数使用介绍
2019/10/06 Python
Python捕获异常堆栈信息的几种方法(小结)
2020/05/18 Python
Alexandre Birman美国官网:亚历山大·伯曼
2019/10/30 全球购物
美国专业消费电子及摄影器材网站:B&H Photo Video
2019/12/18 全球购物
美国椅子和沙发制造商:La-Z-Boy
2020/10/25 全球购物
机械专业个人求职自荐信格式
2013/09/21 职场文书
大学生职业生涯规划方案
2014/01/03 职场文书
幼儿园门卫制度
2014/01/29 职场文书
网络教育自我鉴定
2014/02/04 职场文书
大学同学会活动方案
2014/08/20 职场文书
授权委托书
2014/09/17 职场文书
2015年幼儿园中班下学期工作总结
2015/05/22 职场文书
2019个人工作态度自我评价
2019/04/24 职场文书
Python Parser的用法
2021/05/12 Python
教你用python控制安卓手机
2021/05/13 Python
TypeScript实用技巧 Nominal Typing名义类型详解
2022/09/23 Javascript