Python学习笔记之While循环用法分析


Posted in Python onAugust 14, 2019

本文实例讲述了Python学习笔记之While循环用法。分享给大家供大家参考,具体如下:

前面一篇《Python学习笔记之For循环用法》详细介绍了Python for循环,这里再来讲述一下while循环的使用方法:

Python 中的While循环

For 循环是一种有限迭代,意味着循环主体将运行预定义的次数。这与无限迭代循环不同,无限迭代循环是指循环重复未知次数,并在满足某个条件时结束,while 循环正是这种情况。下面是一个 while 循环的示例:

card_deck = [4, 11, 8, 5, 13, 2, 8, 10]
hand = []
# adds the last element of the card_deck list to the hand list
# until the values in hand add up to 17 or more
while sum(hand) <= 17:
  hand.append(card_deck.pop())

测试:

print(hand)

得到:

[10, 8]

这个示例包含两个函数。sum 返回列表中的元素之和,pop 是一个列表方法,它会从列表中删除最后一个元素并返回该元素。

While 循环的组成部分:

  • 第一行以关键字 while 开始,表示这是一个 while 循环。
  • 然后是要检查的条件。在此示例中是 sum(hand) <= 17
  • while 循环头部始终以冒号 : 结束。
  • 该头部之后的缩进部分是 while 循环的主体。如果 while 循环的条件为 true,该循环的主体将被执行。每次运行循环主体时,条件将被重新评估。这个检查条件然后运行循环的流程将重复,直到该表达式变成 False
  • 注意: 循环的缩进主体应该至少修改测试表达式中的一个变量。如果测试表达式的值始终不变,就会变成无限循环!

Python 中的While循环[相关练习]

写一个 while 循环,用于计算比整数 limit 小的最大平方数,并将其存储在变量 nearest_square 中。平方数是整数乘以自己后的积,例如 36 是一个平方数,因为它等于 6*6。例如,如果 limit 是 40,你的代码应该将 nearest_square 设为 36。

解决方案:

limit = 40
num = 0
# write your while loop here
while (num+1)**2 < limit:
  num += 1
nearest_square = num**2
print(nearest_square)

运行结果:

36

关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python面向对象程序设计入门与进阶教程》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python编程中time模块的一些关键用法解析
Jan 19 Python
python中的错误处理
Apr 10 Python
Python3 操作符重载方法示例
Nov 23 Python
Python常见字符串操作函数小结【split()、join()、strip()】
Feb 02 Python
解决pip install的时候报错timed out的问题
Jun 12 Python
python 中字典嵌套列表的方法
Jul 03 Python
python 获取键盘输入,同时有超时的功能示例
Nov 13 Python
详解Python可视化神器Yellowbrick使用
Nov 11 Python
matplotlib 多个图像共用一个colorbar的实现示例
Sep 10 Python
python 还原梯度下降算法实现一维线性回归
Oct 22 Python
Python虚拟环境virtualenv创建及使用过程图解
Dec 08 Python
详解Python小数据池和代码块缓存机制
Apr 07 Python
Python 使用 PyMysql、DBUtils 创建连接池提升性能
Aug 14 #Python
Python学习笔记之For循环用法详解
Aug 14 #Python
Python学习笔记之Zip和Enumerate用法实例分析
Aug 14 #Python
Python使用mongodb保存爬取豆瓣电影的数据过程解析
Aug 14 #Python
使用python写的opencv实时监测和解析二维码和条形码
Aug 14 #Python
用python3 urllib破解有道翻译反爬虫机制详解
Aug 14 #Python
使用Python实现图像标记点的坐标输出功能
Aug 14 #Python
You might like
支付宝接口开发集成支付环境小结
2015/03/17 PHP
php计算到指定日期还有多少天的方法
2015/04/14 PHP
10个值得深思的PHP面试题
2016/11/14 PHP
php将html转为图片的实现方法
2017/05/19 PHP
Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例
2020/04/04 PHP
PDO实现学生管理系统
2020/03/21 PHP
THREE.JS入门教程(3)着色器-下
2013/01/24 Javascript
web css实现整站样式互相切换
2013/10/29 Javascript
让javascript加载速度倍增的方法(解决JS加载速度慢的问题)
2014/12/12 Javascript
jQuery 1.9.1源码分析系列(十五)之动画处理
2015/12/03 Javascript
js实现多图左右切换功能
2016/08/04 Javascript
javascript 的变量、作用域和内存问题
2017/04/19 Javascript
AngularJS实现的获取焦点及失去焦点时的表单验证功能示例
2017/10/25 Javascript
Vue之beforeEach非登录不能访问的实现(代码亲测)
2019/07/18 Javascript
详解搭建一个vue-cli的移动端H5开发模板
2020/01/17 Javascript
element 中 el-menu 组件的无限极循环思路代码详解
2020/04/26 Javascript
使用Element的InfiniteScroll 无限滚动组件报错的解决
2020/07/27 Javascript
js获取图片的base64编码并压缩
2020/12/05 Javascript
[01:00:52]2018DOTA2亚洲邀请赛 4.4 淘汰赛 EG vs LGD 第一场
2018/04/05 DOTA
Python 调用VC++的动态链接库(DLL)
2008/09/06 Python
Python抓取Discuz!用户名脚本代码
2013/12/30 Python
Python记录详细调用堆栈日志的方法
2015/05/05 Python
在Django中创建URLconf相关的通用视图的方法
2015/07/20 Python
python 用lambda函数替换for循环的方法
2018/06/09 Python
mac PyCharm添加Python解释器及添加package路径的方法
2018/10/29 Python
python实现雪花飘落效果实例讲解
2019/06/18 Python
django之对FileField字段的upload_to的设定方法
2019/07/28 Python
python命令 -u参数用法解析
2019/10/24 Python
python 6.7 编写printTable()函数表格打印(完整代码)
2020/03/25 Python
tensorflow 2.0模式下训练的模型转成 tf1.x 版本的pb模型实例
2020/06/22 Python
Canvas 文字碰撞检测并抽稀的方法
2019/05/27 HTML / CSS
优衣库英国官网:UNIQLO英国
2016/12/25 全球购物
程序员岗位职责
2013/11/11 职场文书
《每逢佳节倍思亲》教后反思
2014/04/19 职场文书
机关领导干部作风整顿整改措施
2014/09/19 职场文书
3050和2060哪个好 性能差多少 差距有多大 谁更有性价比
2022/06/17 数码科技