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支持断点续传的多线程下载示例
Jan 16 Python
Python入门_条件控制(详解)
May 16 Python
详解Python nose单元测试框架的安装与使用
Dec 20 Python
numpy.random.seed()的使用实例解析
Feb 03 Python
python批量设置多个Excel文件页眉页脚的脚本
Mar 14 Python
python将回车作为输入内容的实例
Jun 23 Python
深入浅析Python中的迭代器
Jun 04 Python
用python建立两个Y轴的XY曲线图方法
Jul 08 Python
Python 利用高德地图api实现经纬度与地址的批量转换
Aug 14 Python
使用Python第三方库pygame写个贪吃蛇小游戏
Mar 06 Python
python 实现定时任务的四种方式
Apr 01 Python
Python何绘制带有背景色块的折线图
Apr 23 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
在Zeus Web Server中安装PHP语言支持
2006/10/09 PHP
php mysql Errcode: 28 终极解决方法
2009/07/01 PHP
discuz程序的PHP加密函数原理分析
2011/08/05 PHP
Function eregi is deprecated (解决方法)
2013/06/21 PHP
ThinkPHP中使用Ueditor富文本编辑器
2015/09/02 PHP
PHP浮点数的一个常见问题
2016/03/10 PHP
PHP用continue跳过本次循环中剩余代码的注意点
2017/06/27 PHP
PHP实现求连续子数组最大和问题2种解决方法
2017/12/26 PHP
JavaScipt基本教程之前言
2008/01/16 Javascript
JavaScript.The.Good.Parts阅读笔记(二)作用域&amp;闭包&amp;减缓全局空间污染
2010/11/16 Javascript
jquery实现点击消失的代码
2014/03/03 Javascript
js获取当前页面的url网址信息
2014/06/12 Javascript
jquery禁止回车触发表单提交
2014/12/12 Javascript
node.js中的http.response.writeHead方法使用说明
2014/12/14 Javascript
javascript 构造函数方式定义对象
2015/01/02 Javascript
JavaScript实现同步于本地时间的动态时间显示方法
2015/02/02 Javascript
JavaScript实现简单获取当前网页网址的方法
2015/11/09 Javascript
Ionic快速安装教程
2016/06/03 Javascript
JavaScript中的对象继承关系
2016/08/01 Javascript
JS实现仿PS的调色板效果完整实例
2016/12/21 Javascript
jQuery实现checkbox即点即改批量删除及中间遇到的坑
2017/11/11 jQuery
原生js实现拖拽功能基本思路详解
2018/04/18 Javascript
EXTJS7实现点击拖拉选择文本
2020/12/17 Javascript
Python实现过滤单个Android程序日志脚本分享
2015/01/16 Python
深入理解python中的浅拷贝和深拷贝
2016/05/30 Python
python机器学习理论与实战(五)支持向量机
2018/01/19 Python
python使用锁访问共享变量实例解析
2018/02/08 Python
Python Django给admin添加Action的方法实例详解
2019/04/29 Python
Html5原生拖拽相关事件简介以及基础实现
2020/11/19 HTML / CSS
美国马匹用品和骑马配件购物网站:Horse.com
2018/01/08 全球购物
2015年党性分析材料
2014/12/19 职场文书
2015年世界水日活动总结
2015/02/09 职场文书
2015年乡镇纪委工作总结
2015/05/26 职场文书
红色电影观后感
2015/06/18 职场文书
2016年春季开学典礼新闻稿
2015/11/25 职场文书
Python 文本滚动播放器的实现代码
2021/04/25 Python