python基础教程之while循环
作者:耿宝橙的糖 发布时间:2021-02-05 03:02:17
前言
今天来说下python中的循环。循环的意思是什么,以环形、回路或轨道运行;沿曲折的路线运行;特指运行一周而回到原处。这是百度给出的循环的意思。在python中,就是重复执行你给的指令,直至结束。我们现在看下,在python中,循环就是:while;它有它的规则结构,就是while + 条件(冒号,这个别忘记了。): 意思是,当条件不成立时,不循环。举个例子说明一下:
我们先来说下这个例子的意思,首先,while+条件: 这个已经带入到了代码中,这个代码的意思是当循环10次1的时候 ,跳出循环。先定义了num = 1 那么num 就是1的意思,然后while循环,当Num小于等10 的时候,打印num 的数。break跳出,终止循环。为什么要终止循环,我们来看下不加break的测试结果:
就会无线次一直循环。这就是死循环。为了避免死循环的发生,就加了一个break 。break的用法就是,当你想让上一段循环语句结束时,就可以用到break,那么在break以下的代码,也不会被执行。
上面说到了while的用法。为了巩固这个用法,我们嵌套使用if elif 加上while一起使用看下出来的效果是什么样的。我们有在上一章中说到,if elis是结合一起使用的。那么中间是可以嵌套elif的,再加上循环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‘')结束。我们来看下这段代码执行的结果:
while True的意思就是,如果你的条件为真了,是正确的结果,你break停止循环了时候,就会进入下一个循环。
我们进一步来说下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,为止。循环结束。结果就是:
在这就能看到换行的意义了吧。
上面只是简单介绍了嵌套循环的用法,我们可以升级一下,利用*星号键,来组一个倒三角形。我们看下代码,然后解释一下:
根据代码的描述,先定义Line的值,我定义为5,循环line,当line大于0时,我加了一个注释的意思就是打印出来五列*。就是如图的结果:
但是我想要的是第一行是五个,第二行四个,第三行三个,第二行两个,第一行一个。就是:
这样的效果。那第一列出来的是五个,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,循环结束。
九九乘法表就是套用上面的循环,如图:
这个嵌套循环的意思,跟上面星星的意思是一样的。很简单吧~~~反正我是烧脑了半天~~~~~~ 敬请期待下一集。
来源:https://www.cnblogs.com/gengzhaodan1314/p/7831621.html
猜你喜欢
- 本文实例为大家分享了python实现多人聊天室的具体代码,供大家参考,具体内容如下刚开始学习python,写了一个聊天室练练手。Server
- 首先还是应该科普下函数参数传递机制,传值和传引用是什么意思?函数参数传递机制问题在本质上是调用函数(过程)和被调用函数(过程)在调用发生时进
- 代码import requestsimport timefrom tqdm import tqdmfrom bs4 import Beaut
- 5.0版本和之前版本的差异较大,本篇对熟悉3.2版本的用户给出了一些5.0的主要区别。URL和路由5.0的URL访问不再支持普通URL模式,
- 写在前面:本节主要讲述一些基本的,常用的SQL语句,而非数据库方面的基本知识。数据库方面的知识留待以后再讲,现在就我们平常常用的一些SQL语
- 模式库 在模式库里,我将列出所有电子商务网站需要的模式.以下将罗列出经典常用的模式案例,我也试图让这些模式看起来更有趣味性与实用性。(Yah
- 导言在前面的教程我们看到了如何使用两个页面(一个主页,用于列出供应商; 一个明细页,用于显示选定供应商提供的产品)创建主/从报表 . 这种两
- 前言:网上搜到了一些关于手势处理的实验,我在这儿简单的实现一下,主要运用的知识就是opencv,python基本语法,图像处理基础知识。获取
- 参考官网地址:Windows端:https://tensorflow.google.cn/install/source_windowsCPU
- 一、简单介绍正则表达式是一种小型的、高度专业化的编程语言,并不是python * 有的,是许多编程语言中基础而又重要的一部分。在python中
- Windows 8 终于发布了,虽然现在可用的只是开发者预览版,好消息是,IE 10 也随着发了,虽然现在还只有Windows 8可用。我们
- 本文实例讲述了Python贪心算法。分享给大家供大家参考,具体如下:1. 找零钱问题:假设只有 1 分、 2 分、五分、 1 角、二角、 五
- 对于Python而言代码缩进是一种语法,Python没有像其他语言一样采用{}或者begin...end分隔代码块,而是采用代码缩进和冒号来
- 一、简介基础知识:需要一定的html和css的语法知识基本概念:PHP(超文本预处理器)是一种通用开源脚本语言,在服务器上执行。PHP文件:
- #环境win64+anaconda+python3.6list & array(1)list不具有array的全部属性(如维度、转置
- 本文实例讲述了Python大数据之从网页上爬取数据的方法。分享给大家供大家参考,具体如下:myspider.py :#!/usr
- 最近重新温习了一次《javascript设计模式》,确实是一本好书,每次看都有不同的领悟,每次领悟到的都受益匪浅,无怪古圣人都说学无止镜了,
- 如何实现优惠打折? 代码及说明见下:<%@ LANG
- MySQL 如何从表中取出随机数据 以前在群里讨论过这个问题,比较的有意思.mysql的语法真好玩. 他们原来都想用P
- 目录前言创建表关系多表数据操作 - 增删改一对多&一对一关系 - 增删改增加数据删除数据修改数据多对多关系 - 增删改增加多对多关系