python基础教程之while循环


Posted in Python onAugust 14, 2019

前言

今天来说下python中的循环。循环的意思是什么,以环形、回路或轨道运行;沿曲折的路线运行;特指运行一周而回到原处。这是百度给出的循环的意思。在python中,就是重复执行你给的指令,直至结束。我们现在看下,在python中,循环就是:while;它有它的规则结构,就是while + 条件(冒号,这个别忘记了。): 意思是,当条件不成立时,不循环。举个例子说明一下:

python基础教程之while循环

我们先来说下这个例子的意思,首先,while+条件: 这个已经带入到了代码中,这个代码的意思是当循环10次1的时候 ,跳出循环。先定义了num = 1 那么num 就是1的意思,然后while循环,当Num小于等10 的时候,打印num 的数。break跳出,终止循环。为什么要终止循环,我们来看下不加break的测试结果:

python基础教程之while循环

就会无线次一直循环。这就是死循环。为了避免死循环的发生,就加了一个break 。break的用法就是,当你想让上一段循环语句结束时,就可以用到break,那么在break以下的代码,也不会被执行。

上面说到了while的用法。为了巩固这个用法,我们嵌套使用if elif 加上while一起使用看下出来的效果是什么样的。我们有在上一章中说到,if elis是结合一起使用的。那么中间是可以嵌套elif的,再加上循环while,我们来举个例子,说明一下:

python基础教程之while循环

这是一个猜年龄的游戏,意思就是,当你猜到输入的年龄是60的时候,终止循环,如果你输入的年龄大于60,提示太大了,如果小于60,提示太小了。我们来逐个看下,每一段代码的意思。首先,我们定义变量,age年龄是60岁。定义它,是为了接下来要猜测年龄做准备。while True :这个意思是无限循环。这个的用法是,如果你所需的条件,等于你所输出的条件是正确的时候,就break,终止循环,否则就是无限循环。(是不是还不太懂,没关系,这个就记住是无限循环的意思。往后看就明白了。)接下来的这一段,user_input_age = int(input('age is :'))意思就是,定义你要输如数字的变量,int,这个解释我在上一章讲过,就是把字符串变成数据时使用。简单理解,就是你要输出的数字。if 判断,如果,user_input_age输入的数字,等于你定义的年龄60的时候,那就打印出来yes,那这个条件就是为真。是正确的,真实的,那么就break,终止循环。elif,再如果,user_input_age> age:这句话意思就是,如果你输出的年龄大于定义的年龄60的时候,那就打印出,太大了。else,其它的,就是小于60的,那就是输出太小了。注意,else,是当while循环后执行,只在break时不执行。意思就是说如果你加了break ,那就终止了,不会再执行了。那么continue的意思呢,跳过当次循环,继续循环的意思。如果你不加continue,就会无限循环,结果就跟上面的111111一样,无限循环你输入的年龄。然后print(‘'END‘')结束。我们来看下这段代码执行的结果:

python基础教程之while循环

while True的意思就是,如果你的条件为真了,是正确的结果,你break停止循环了时候,就会进入下一个循环。

我们进一步来说下while使用嵌套循环的方法,嵌套循环,就是循环套循环使用。比如,我们输入数字几,就打出几行几列的#号键:

python基础教程之while循环

首先我们先定义好行数:height = int(input('Height:'))

然后 定义好输入的列数:width = int(input('Width:'))

循环条件定义:num_height=1这是行数循环。同理列数循环定义也是1。

用循环方式,当num_height小于等于你的行数。就是小于或者等于你输入的数字。就打印出来#号键,并且加空格。循环num_height +=1的意思意思就是。我一开始定义了unm_height是1,每次都加一循环。但是条件是小于我输入的数字。例如,我输入的数字是个3,那么每次循环加1,第一次循环是1,1小于3,打印出第一个#号,再一次循环,1+1=2,2小于3,打印出第二个#,第三个循环2+1=3,3等于3 打印出第三个#。print ("#",end=" "),这个意思是打印#号键,并且以一个空格分隔开。连着print()就是换行的意思,(结果会看到什么是换行)当一个条件执行完毕,再执行下一个条件,就是说先执行我第一定义的行数。再执行列数。行数执行完毕,同理,列也是一样的意思。我先定义好你即将输入的列数,你输入多少就是多少。然后再用列数每次循环加一。假定也是3,那就是每次循环加1,直到等于3,为止。循环结束。结果就是:

python基础教程之while循环

在这就能看到换行的意义了吧。

上面只是简单介绍了嵌套循环的用法,我们可以升级一下,利用*星号键,来组一个倒三角形。我们看下代码,然后解释一下:

python基础教程之while循环

根据代码的描述,先定义Line的值,我定义为5,循环line,当line大于0时,我加了一个注释的意思就是打印出来五列*。就是如图的结果:

python基础教程之while循环python基础教程之while循环

但是我想要的是第一行是五个,第二行四个,第三行三个,第二行两个,第一行一个。就是:

python基础教程之while循环

这样的效果。那第一列出来的是五个,line是不能动的值。那就需要循环套用循环,再写一个循环定义tmp 等于line,就是tmp也是等于5,然后,内循环tmp,并且以一个空格换行的形式输出*号键。tmp= tmp -1的意思是,循环一次外循环的line的值赋予tmp减去一。比如,line是5时,出来五个星,但是line - =1就是每次循环,第一次循环是5个星,当line -=1 时,赋值给到tmp,那么tmp也会减去1.内循环减去1,也就是4。直到,tmp无法大于0,循环结束。

九九乘法表就是套用上面的循环,如图:

python基础教程之while循环

python基础教程之while循环

这个嵌套循环的意思,跟上面星星的意思是一样的。很简单吧~~~反正我是烧脑了半天~~~~~~ 敬请期待下一集。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
Python利用正则表达式匹配并截取指定子串及去重的方法
Jul 30 Python
Python的Flask框架中使用Flask-Migrate扩展迁移数据库的教程
Jun 14 Python
详解Python中的相对导入和绝对导入
Jan 06 Python
详解Python实现多进程异步事件驱动引擎
Aug 25 Python
[原创]pip和pygal的安装实例教程
Dec 07 Python
python版学生管理系统
Jan 10 Python
python使用jieba实现中文分词去停用词方法示例
Mar 11 Python
python flask框架实现重定向功能示例
Jul 02 Python
解决Django migrate不能发现app.models的表问题
Aug 31 Python
基于Python实现2种反转链表方法代码实例
Jul 06 Python
最新PyCharm 2020.2.3永久激活码(亲测有效)
Nov 26 Python
python中requests库+xpath+lxml简单使用
Apr 29 Python
Python 实例方法、类方法、静态方法的区别与作用
Aug 14 #Python
Python学习笔记之Break和Continue用法分析
Aug 14 #Python
Python学习笔记之While循环用法分析
Aug 14 #Python
Python 使用 PyMysql、DBUtils 创建连接池提升性能
Aug 14 #Python
Python学习笔记之For循环用法详解
Aug 14 #Python
Python学习笔记之Zip和Enumerate用法实例分析
Aug 14 #Python
Python使用mongodb保存爬取豆瓣电影的数据过程解析
Aug 14 #Python
You might like
php模拟socket一次连接,多次发送数据的实现代码
2011/07/26 PHP
PHP+Mysql+Ajax+JS实现省市区三级联动
2014/05/23 PHP
php实现保存周期为1天的购物车类
2017/07/07 PHP
JavaScript 字符串乘法
2009/08/20 Javascript
javascript 获取select下拉列表值的代码
2009/09/07 Javascript
5个最佳的Javascript日期处理类库分享
2012/04/15 Javascript
javascript使用正则获取url上的某个参数
2014/09/04 Javascript
jQuery插件MixItUp实现动画过滤和排序
2015/04/12 Javascript
jquery实现仿JqueryUi可拖动的DIV实例
2015/07/31 Javascript
jQuery+HTML5+CSS3制作支持响应式布局时间轴插件
2016/08/10 Javascript
详解Angular2中的编程对象Observable
2016/09/17 Javascript
JS焦点图,JS 多个页面放多个焦点图的实例
2016/12/08 Javascript
如何使用bootstrap框架 bootstrap入门必看!
2017/04/13 Javascript
微信小程序 本地数据读取实例
2017/04/27 Javascript
Vue2.0基于vue-cli+webpack Vuex的用法(实例讲解)
2017/09/15 Javascript
20行JS代码实现粘贴板复制功能
2018/02/06 Javascript
node使用promise替代回调函数
2018/05/07 Javascript
Vue 全家桶实现移动端酷狗音乐功能
2018/11/16 Javascript
一步快速解决微信小程序中textarea层级太高遮挡其他组件
2019/03/04 Javascript
jquery UI实现autocomplete在获取焦点时得到显示列表功能示例
2019/06/04 jQuery
React 父子组件通信的实现方法
2019/12/05 Javascript
node.js制作一个简单的登录拦截器
2020/02/10 Javascript
JavaScript数组排序功能简单实现
2020/05/14 Javascript
javascript this指向相关问题及改变方法
2020/11/19 Javascript
centos系统升级python 2.7.3
2014/07/03 Python
在Python中使用模块的教程
2015/04/27 Python
Python卸载模块的方法汇总
2016/06/07 Python
Python Flask基础教程示例代码
2018/02/07 Python
python中yield的用法详解——最简单,最清晰的解释
2019/04/04 Python
python ChainMap的使用和说明详解
2019/06/11 Python
Python用K-means聚类算法进行客户分群的实现
2020/08/23 Python
反邪教警示教育活动总结
2015/05/09 职场文书
2015年社区国庆节活动总结
2015/07/30 职场文书
2016年度创先争优活动总结
2016/04/05 职场文书
python绘制箱型图
2021/04/27 Python
浅谈redis的过期时间设置和过期删除机制
2022/03/18 MySQL