400-650-7353

精品课程

您所在的位置:首页 > IT干货资料 > python > 【Python基础知识】Python汇总的while语句怎么使用

【Python基础知识】Python汇总的while语句怎么使用

1、while循环语句

迭代(iteration)意味着反复执行相同的代码块。实现迭代的编程结构称为循环(loop)。

假设有一项任务,要在屏幕上输出从1到100的数字。仅仅使用之前讨论过的知识,可能会写出如下代码:

  1. print(1
  2. print(2
  3. print(3
  4. # 此处省略print(4) ~ print(99) 
  5. print(100

这样做非常麻烦,也不聪明。学会编程的好处之一就是可以方便地处理重复工作。Python中的循环可以分为while循环和for循环两种。

与if语句类似,while语句同样首先判断布尔表达式,如果为真,那么继续执行循环体;如果为假,那么跳出循环体。while循环的语法格式如下:

while 表达式:

循环体

使用while循环来完成从1到100的输出任务:

  1. >>> n = 1   # 因为从1开始打印,所以先将n赋值为1 
  2. >>> while n <= 100:   # 每次都判断n的值是否小于等于100 
  3. ...     print(n)   # 打印n的值 
  4. ...     n = n + 1   # 每次将n的值增加1,以便打印2、3、4…… 
  5. ...  
  6. 1 
  7. 2 
  8. 3 
  9. 4 
  10. …… 
  11. 98 
  12. 99 
  13. 100 

while循环总是不断地判断条件是否满足,直到条件不满足才跳出循环。利用这个特性,可以编写一个“猜数字”的游戏。先由一个人输入一个数字(自然数),这个数作为谜底。再由另外一个人猜,如果猜的数字比谜底大,那么打印“猜大了”; 如果猜的数字比谜底小,那么打印“猜小了”;直到猜的数字与谜底相等为止,打印“恭喜,猜对了!”。代码示例如下:

  1. answer = int(input('请输入谜底数字:')) 
  2. number = int(input('请输入您要猜的数字:')) 
  3. while number != answer:   # 如果number不等于answer,即猜错了,那么进入循环 
  4.     if number > answer:   # 如果猜的数字大于谜底 
  5.         print('猜大了!'
  6.     else:   # 如果猜的数字小于谜底 
  7.         print('猜小了!'
  8.     number = int(input('请继续输入您要猜的数字:')) 
  9. print('恭喜,猜对了!')   # 如果跳出循环,那么说明猜对了 

建议将这个程序使用脚本模式运行,输入数据,测试运行结果:

  1. 请输入谜底数字:77 
  2. 请输入您要猜的数字:20 
  3. 猜小了! 
  4. 请继续输入您要猜的数字:90 
  5. 猜大了! 
  6. 请继续输入您要猜的数字:80 
  7. 猜大了! 
  8. 请继续输入您要猜的数字:77 
  9. 恭喜,猜对了! 

2、小心死循环

死循环是指程序在流程控制中一直重复运行某一段代码,无法依靠自身的控制终止循环。初学者很容易不小心写出死循环。例如,在前文使用while循环完成从1到100的输出任务中,如果将最后一行代码“n = n + 1”删掉,那么该循环就变成了死循环。这是因为n的值不会增加,从而会一直满足“n <= 100”的条件无法跳出循环。试着运行如下代码:

  1. >>> n = 1 
  2. >>> while n < 100
  3. ...     print(n) 
  4. ...     
  5. 1 
  6. 1 
  7. 1 
  8. 1 
  9. 1 
  10. 1 
  11. 1 
  12. 1 
  13. …… 

当敲下最后一个回车键时,程序会在屏幕上不停地打印1,直到强制关闭程序窗口,或者按Ctrl+C键终止程序。死循环可能会使电脑崩溃或者造成其他与预期不符的后果,因此,在使用while循环时要格外小心,看看是否有能够满足条件跳出循环的“出口”。

需要指出的是,有些应用场景下需要使用死循环(例如,操作系统最外层是死循环,保证电脑一直运行),也就是说写出死循环不一定是错的,但应该仅当清楚自己在做什么时,才写死循环。

课程好礼申请领取
您的姓名
您的电话
意向课程
 

中公优就业

官方QQ

扫描上方二维码或点击一键加群,免费领取价值599元网课,加群暗号:599。 一键加群

>>本文地址:
注:本站稿件未经许可不得转载,转载请保留出处及源文件地址。

推荐阅读

优就业:ujiuye

关注中公优就业官方微信

  • 关注微信回复关键词“大礼包”,领80G学习资料
QQ交流群
领取免费网课
(加群备注“网站”)
IT培训交流群 加入群聊 +
软件测试 加入群聊 +
全链路UI/UE设计 加入群聊 +
Python+人工智能 加入群聊 +
互联网营销 加入群聊 +
Java开发 加入群聊 +
PHP开发 加入群聊 +
VR/AR游戏开发 加入群聊 +
大前端 加入群聊 +
大数据 加入群聊 +
Linux云计算 加入群聊 +
优就业官方微信
扫码回复关键词“大礼包”
领取80G学习资料

测一测
你适合学哪门IT技术?

1 您的年龄

2 您的学历

3 您更想做哪个方向的工作?

获取测试结果
 
课程资料、活动优惠 领取通道
 
 
网站地图 百家乐赢家 线上真人百家乐 菲律宾太阳城娱乐网
申博手机版下载客户端 申博怎么登入不了 申博亚洲娱乐网 申博娱乐太阳登入
大发彩票游戏直营网 PT视讯 百益彩票注册直营网 捕鱼达人小游戏4399登入
全讯网新百乐彩 娱乐天上人间 百家乐怎么玩才能赢 申博怎么登入游戏
申博娱乐网官网登入 申博怎么登入游戏 真人百家乐破解 太阳娱乐网开户登入
DC291.COM 231SUN.COM 1385170.com 288BBIN.COM XSB592.COM
8YQS.COM 188TGP.COM 179SUN.COM 8ZJS.COM XSB596.COM
777TGP.COM 778DC.COM 729DC.COM 598jbs.com 666TGP.COM
588XTD.COM 222TGP.COM 8YKS.COM 315ib.com 828XTD.COM