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采用socket模拟TCP通讯的实现方法
Nov 19 Python
Python函数中定义参数的四种方式
Nov 30 Python
在Python中通过threading模块定义和调用线程的方法
Jul 12 Python
python中文编码与json中文输出问题详解
Aug 24 Python
Django 接收Post请求数据,并保存到数据库的实现方法
Jul 12 Python
100行Python代码实现每天不同时间段定时给女友发消息
Sep 27 Python
Python解析多帧dicom数据详解
Jan 13 Python
keras获得model中某一层的某一个Tensor的输出维度教程
Jan 24 Python
python 装饰器功能与用法案例详解
Mar 06 Python
Java爬虫技术框架之Heritrix框架详解
Jul 22 Python
python 删除系统中的文件(按时间,大小,扩展名)
Nov 19 Python
详细介绍python操作RabbitMq
Apr 12 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设计模式 Facade(外观模式)
2011/06/26 PHP
使用ThinkPHP自带的Http类下载远程图片到本地的实现代码
2011/08/02 PHP
php格式化时间戳显示友好的时间实现思路及代码
2014/10/23 PHP
php关联数组快速排序的方法
2015/04/17 PHP
JavaScript 编写匿名函数的几种方法
2010/02/21 Javascript
JavaScript对数组进行随机重排的方法
2015/07/22 Javascript
利用JS提交表单的几种方法和验证(必看篇)
2016/09/17 Javascript
KnockoutJS 3.X API 第四章之表单textInput、hasFocus、checked绑定
2016/10/11 Javascript
js+canvas实现滑动拼图验证码功能
2018/03/26 Javascript
对angularJs中$sce服务安全显示html文本的实例
2018/09/30 Javascript
webpack-url-loader 解决项目中图片打包路径问题
2019/02/15 Javascript
vue项目中使用bpmn-自定义platter的示例代码
2020/05/11 Javascript
详谈Object.defineProperty 及实现数据双向绑定
2020/07/18 Javascript
[59:30]VG vs LGD 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.22
2019/09/05 DOTA
用python写asp详细讲解
2013/12/16 Python
Python实现比较两个列表(list)范围
2015/06/12 Python
python调用系统ffmpeg实现视频截图、http发送
2018/03/06 Python
python实现excel读写数据
2021/03/02 Python
python读取txt文件中特定位置字符的方法
2018/12/24 Python
python的依赖管理的实现
2019/05/14 Python
Python中IP地址处理IPy模块的方法
2019/08/16 Python
python logging日志模块原理及操作解析
2019/10/12 Python
详解Pycharm出现out of memory的终极解决方法
2020/03/03 Python
Python基于Hypothesis测试库生成测试数据
2020/04/29 Python
HEMA法国:荷兰原创设计
2019/02/21 全球购物
网络教育毕业生自我鉴定
2013/10/10 职场文书
迷你西餐厅创业计划书范文
2013/12/31 职场文书
愚人节活动策划方案
2014/03/11 职场文书
公司副总经理任命书
2014/06/05 职场文书
简单租房协议书(范本)
2014/10/13 职场文书
2015年百日安全活动总结
2015/03/26 职场文书
2015年设计师个人工作总结
2015/04/25 职场文书
离婚承诺书格式范文
2015/05/04 职场文书
初婚未育证明样本
2015/06/18 职场文书
《伯牙绝弦》教学反思
2016/02/16 职场文书
如何用PHP实现多线程编程
2021/05/26 PHP