大家好,本篇文章将续写上一篇文章,介绍跟总结我们的while循环语句、for循环语句

首先给大家讲解一下什么叫循环,否则后面会非常的蒙蔽,我们假设一下,今天是新生入学,我们是引导的老师,我们会问一位同学,你是哪个班的,然后他回答一班,那么我们就要指引他们去一班的方向,然后我们会问下一位同学,你是哪个班的,然后他回答二班,那么我们就要指引他去二班,然后在问下一位,他回答一班,那么我们就要指引他去往一班,这个反复询问的过程,就叫我们的循环,我们在反复做的一件事就是我们的循环过程。现在大家有点初步的领悟了吗。

while循环语句

while循环语句是一个常用且简单的条件表达循环语句,表达式如下:

while 执行循环的条件:执行循环的内容

我们先来一个简单的举例:

当我们满足条件时,就会执行我们的循环内容,内容执行完以后会从新进行我们的条件判断,如果条件成立,会再次进入我们的循环内容,执行我们的循环内容,在上面的例子中,我们首先给定了一个a,并且我们的a=1,在下面的循环条件中,满足a<4,所以会进入我们的循环,打印出我们的“CSDN成就一亿程序员”,然后执行下一步a=a+1,在上一篇文章中介绍了我们的运算符,a=a+1的意思在这里就是自动增加1的意思,简单分析计算就是,等号右边的a为我们的赋值a,为1,然后加上1,给我们左边的a,这个时候我们的a=2,结束第一次循环,将a等于2带入while的条件判断,2<4,执行循环内容,打印“CSDN成就一亿程序员”,然后左边的a这个时候等于2,加上1给我们左边的a,那么我们左边的a=3,然后结束第二次循环,进入while的条件判断,3<4满足条件进入循环,直到我们的a>=4整个循环结束。

结果如下:

这个例子需要新手们好好去理解循环的过程,跟赋值的自增,自增的理解能帮助我们后续解决很多的循环,我们后续很多简易的程序都会在循环的基础上展开,需要新手们多多的理解跟掌握。

在我们的循环执行过程中,我们的循环执行语句还可以用我们的if条件语句,两者相结合可以很好的解决很多条件再条件的筛选的问题,例如我们刚刚解释循环时的举例,我们分析一个学生是否属于我们学校的,如果不属于那后面的问题就没有必要询问了,如果是,那就进入我们的循环询问

下面我们就用while循环语句跟if条件语句解决一下我们的这个问题,进入我们的循环,条件是属于我们学校的学生,那么我们就可以很轻松的定义我们的条件,这里我们以学号在什么范围之内的为我们学校的学生来定义:

这样我们的一个简易的程序就完成了,让我们来执行一下:

这个时候,执行了的小伙伴就会发现,这个程序是错误的,一旦输入了一个数,我们就进入了死循环,一直都只报一个结果,而且重复报一个结果,这是为什么呢?

在我们讲的第一个例子中,我们的a在每一次执行都会自动增加,达到不满足进入循环的条件,这样我们的循环才会终止,而在我们这次例子中,我们没有终止循环的条件,我们输入一个学号以后便会进行判断,满足循环条件后进行循环,结束一次循环之后,再次判断,但是我们的学号并不会改变,也就是永远满足进入我们循环的条件,所以这是一个错误的死循环的程序,那么我们如何更改我们的程序让他不进入死循环呢?

break结束语句

在我们的循环过程中,我们可以使用break结束我们的整个循环过程,break使用的表达式:

while 循环条件:执行循环的内容break (执行循环内容后退出循环)或者while 循环条件:if 条件:执行的内容break (执行内容后退出循环)elif 条件:执行的内容breakelse:执行的内容break

在我们使用第一种时,我们的循环只会进行一次,循环的意义就不存在了,所以我们通常使用第二种,现在我们将刚才的程序修改一下:

我们执行一下:

这样我们就不会进入我们的死循环,程序便会自动跳出循环

这个时候会有同学来问,那我岂不是来一个同学就要执行一次程序??这样不是很麻烦嘛,怎么做到一次循环,就可以分辨来的所有学生的所有班级位置呢?

在一次循环中,我们可以改变我们的学生的学号,怎样做呢??我们回想一下我们前面所讲的,我们是如何让我们的循环跳出的? 让我们的a自增,达到无法满足循环的条件,我们这里并不能自增,但是思路的差不多的,在循环的最后重新给我们的学号赋值即可:

我们在最后一步加上我们的input输入,重新给定我们的a然后跳出第一次循环,便可以用我们的新的学号进行条件的判断,让我们来运行一下:

我们发现,这个的一直循环更改学号的程序好了,但是有一个不足的地方就是,当这个学生不属于我们学校的时候,就会跳出我们的循环,这是因为在我们进入循环时的条件就是这个学生必须属于是我们学校的,学号要小于100是才能进入循环,那么我们怎么做到修改能做个就算该学生不是我们学校的也可以继续我们的循环呢?

如果我们先进入循环,在进行学生班级的判断呢??也就是说无论该生是不是我们学校的学生,我们都可以进入循环,这样就不会出现上方的不足了,让我们一起来思考一下:

这这里,我们的思路就构建完成了,但是我们的新的问题出现了,我们如何进入这个循环??怎样能做到一直在这个循环中呢??在这里给大家补充一个小仿佛,我们的布尔运算符,即我们的正确值True,当正确时进入循环:

因为我们没有有True赋予其他的属性,所以我们在整个循环过程中,都是正确的,都能进入我们的循环,这样我们的问题就解决了,让我们来执行一下:

这样,我们就能一直执行下去,然后我们给他补充一个退出的语句即可:

当我们键盘输入999时,我们便可以直接结束我们的循环:

我们while循环的大致内容跟技巧就总结到这里,循环是一个很重要的语句,在一个大的程序编写中,会多次运用到循环,需要我们多打开脑洞,思路,这样我们的循环能实现很多作用。

我们下节会总结我们的for循环语句,并且会赋予大家一些练习题,可以供大家巩固我们的代码,下次见啦,再见!

十分钟学懂Python入门基础3(中)相关推荐

  1. python数据分析建模-十分钟搞懂“Python数据分析”

    原标题:十分钟搞懂"Python数据分析" 引言:本文重点是用十分钟的时间帮读者建立Python数据分析的逻辑框架.其次,讲解"如何通过Python 函数或代码和统计学知 ...

  2. pearsonr() python_十分钟搞懂“Python数据分析”

    引言:本文重点是用十分钟的时间帮读者建立Python数据分析的逻辑框架.其次,讲解"如何通过Python 函数或代码和统计学知识来实现数据分析". 本次介绍的建模框架图分为六大版块 ...

  3. 学理发的入门基础知识 哪些内容要了解

    很多人学习理发,会选择去理发店当学徒,和师傅学习.有的人会选择去专业的培训学校学校,青岛德利丰美容美发学校认为,不论去哪里学习,都要从最基本的知识学起,学习理发最重要的就是要有正确的操作手法,要有时尚 ...

  4. 3分钟入门python_3分钟学完Python,直接从入门到精通「史上最强干货库」

    作为帅气小编,我已经把python一些模块的甩在这儿了qwq,只要你拿到这些干货,包你玩转python,直接冲向"大佬"的段位,如果已经学了C或者C++或者说如果你需要你的一段关键 ...

  5. Python入门基础知识学什么?

    Python基础知识主要是针对一些零基础的同学安排的,虽说Python是相对比较简单的一门编程语言,但是没有基础的同学还是要进行系统的学习,那么Python入门基础知识学什么呢?来看看下面小编的详细介 ...

  6. java和python的web自动化有什么区别-三分钟看懂Python和Java的区别

    随着人工智能的火爆,Python和Java一直在各种流行编程语言中名列前茅.其实Java和Python有些相似,因为很多编程语言之间是互通的.Java现在还是第一,不知道Python未来会不会超越Ja ...

  7. python和java一样吗-三分钟看懂Python和Java的区别

    随着人工智能的火爆,Python和Java一直在各种流行编程语言中名列前茅.其实Java和Python有些相似,因为很多编程语言之间是互通的.Java现在还是第一,不知道Python未来会不会超越Ja ...

  8. python和java的区别-三分钟看懂Python和Java的区别

    随着人工智能的火爆,Python和Java一直在各种流行编程语言中名列前茅.其实Java和Python有些相似,因为很多编程语言之间是互通的.Java现在还是第一,不知道Python未来会不会超越Ja ...

  9. html网页和cgi程序编程,十分钟搞懂什么是CGI

    原文:CGI Made Really Easy,在翻译的过程中,我增加了一些我在学习过程中找到的更合适的资料,和自己的一些理解.不能算是严格的翻译文章,应该算是我的看这篇文章的过程的随笔吧. CGI真 ...

  10. python笔记基础-Python入门基础知识学习笔记之一

    为什么要写这篇文章? 本人做过Objective-C开发,现在在用C#做WinForm开发.近段时间在学习Python入门基础知识时,发现有很多知识点和Objective-C的不一样.故想通过本文记录 ...

最新文章

  1. 在Google Cloud Platform上持续部署Node.js
  2. 三个打印函数printf()/sprintf()/snprintf()区别
  3. 2016年10月30日表单标签与样式表分类和选择器
  4. 被吹的神乎其神的Python到底都能干什么
  5. android:autolink 颜色,Android设置完autoLink属性后自定义跳转到指定界面
  6. jQuery复制table header到表格的最下面
  7. ajax中html的属性,jQuery Ajax加载html数据正常,但属性似乎'不可读'
  8. 使用Flask-Migrate进行管理数据库升级
  9. 证券类私募主要需求及核心服务商
  10. AD教程系列 | 0-认识Altium Designer:汉化和新建项目
  11. 拟合美国人口matlab编码,美国人口数据的阻滞增长模型拟合分析
  12. vue仿163musicPC端
  13. Android下载多张图片保存到本地
  14. 电子钱包电子存折,区别
  15. php官方微信接口大全(微信支付、微信红包、微信摇一摇、微信小店)
  16. [信息论与编码]离散信源及其信息测度(2)
  17. Android MTK 放电曲线以及库轮值矫正
  18. PACS系统源码,大型医院PACS源码集成三维重建
  19. 等价无穷小代换易混淆的概念错误!!用泰勒展开,以后!
  20. Python——迷宫生成和迷宫破解算法

热门文章

  1. 嵌入式系统设计师需要掌握什么
  2. mysql操作入门(四)-----数据排序(升序、降序、多字段排序)
  3. 谷歌神经网络机器翻译NMT:人人可利用TensorFlow快速建立翻译模型
  4. TortoiseCVS 安装遇到的一些问题
  5. APKTOOL打包方法
  6. 遏制流氓软件的方法:禁止360的sesvc.exe在后台运行
  7. 电力设备巡检解决方案
  8. 1.工作汇报结构: 黄金圈法则结构、PREP结构、时间轴结构、金字塔结构
  9. Elasticearch 搜索引擎(1
  10. 拍拍熊(APT-C-37),诱导方式、DNS、安卓远控