小白学 Python(8):基础流程控制(下)
人生苦短,我选Python
前文传送门
循环结构
循环结构一般而言,就是一直做某件事情,直到满足某种条件。
正常的 while 循环
比如:学习使我快乐,一直学习一直快乐。
这好像和我上面说的定义有点不相符,那么我再补充一句,直到我不快乐,那么我就不学习了。
那么上面这个场景用代码怎么实现呢?
happy = 0
while happy < 10:
print("学习使我快乐,快乐 + 1,当前快乐值为:", happy)
happy += 1
print("我不快乐了")
运行结果如下:
学习使我快乐,快乐 + 1,当前快乐值为: 0
学习使我快乐,快乐 + 1,当前快乐值为: 1
学习使我快乐,快乐 + 1,当前快乐值为: 2
学习使我快乐,快乐 + 1,当前快乐值为: 3
学习使我快乐,快乐 + 1,当前快乐值为: 4
学习使我快乐,快乐 + 1,当前快乐值为: 5
学习使我快乐,快乐 + 1,当前快乐值为: 6
学习使我快乐,快乐 + 1,当前快乐值为: 7
学习使我快乐,快乐 + 1,当前快乐值为: 8
学习使我快乐,快乐 + 1,当前快乐值为: 9
我不快乐了
正所谓物极必反,快乐到极致以后就是不快乐,不快乐就不学习了。
while 死循环
当然不排除自然界中总有某些大佬,他们能一直学习并且一直快乐下去:
那么他们的代码就和普通人的不一样,
happy = 0
while True:
print("学习使大佬快乐,快乐 + 1,当前快乐值为:", happy)
happy += 1
这个就比较狠了,但是出现一个问题是,现在大佬快乐的停不下来了,这可咋办,这个时候想让大佬停止快乐冷静冷静就只能祭出我们的大杀器:
不对不对,掏错了错了,是这个:
for 循环
for 循环的一般使用格式如下:
for <variable> in <sequence>:
<statements>
else:
<statements>
这里的 <sequence>
可以是我们学过的字符串,也可以是我们将要学的列表,元组,字典等。
话不多说,先来个栗子看看:
错了错了,是这个:
for index in "Python":
print(index)
输出结果是这样的:
P
y
t
h
o
n
这里相当于去循环 "Python" 这个字符串里的每位字符。
然后依次打印。
如果需要使用 for 循环遍历数字序列,可以使用内置的 range() 函数。先简单体验下:
for index in range(5):
print(index)
结果如下:
0
1
2
3
4
语法:range(start, stop[, step])
- start:计数从 start 开始。
- stop:计数到 stop 为止,但不包括 stop 。
- step:步长,也叫间隔。
比如向这样:
腿长任性,一次能走 3 步,那么它的实现就应该是这样的:
for index in range(0, 10, 3):
print(index)
输出结果如下:
0
3
6
9
循环中断
我们在学习的过程中,总会面对各种各样的诱惑,比如:
这时,我们快乐的学习过程就不得不中断了。
而在 Python 中,中断循环有 break 和 continue 两种。
- break :结束本次循环,跳出所在的循环。
- continue :中断本次循环,继续进行下一次循环。
那么如果你去开黑,不回来学习了就是 break 。
我们用代码描述下这个场景:
happy = 0
while happy < 10:
happy += 1
if happy == 5:
break
print("学习使我快乐,快乐 + 1,当前快乐值为:", happy)
print("还是开黑更快乐一些~~~")
运行结果如下:
学习使我快乐,快乐 + 1,当前快乐值为: 1
学习使我快乐,快乐 + 1,当前快乐值为: 2
学习使我快乐,快乐 + 1,当前快乐值为: 3
学习使我快乐,快乐 + 1,当前快乐值为: 4
还是开黑更快乐一些~~~
当然,有时候也会有些特殊情况,比如开黑玩了一局以后,还是觉得学习更快乐,接着回来学习:
happy = 0
while happy < 10:
happy += 1
if happy == 5:
continue
print("学习使我快乐,快乐 + 1,当前快乐值为:", happy)
print("还是学习会更快乐~~~")
执行结果如下:
学习使我快乐,快乐 + 1,当前快乐值为: 1
学习使我快乐,快乐 + 1,当前快乐值为: 2
学习使我快乐,快乐 + 1,当前快乐值为: 3
学习使我快乐,快乐 + 1,当前快乐值为: 4
学习使我快乐,快乐 + 1,当前快乐值为: 6
学习使我快乐,快乐 + 1,当前快乐值为: 7
学习使我快乐,快乐 + 1,当前快乐值为: 8
学习使我快乐,快乐 + 1,当前快乐值为: 9
学习使我快乐,快乐 + 1,当前快乐值为: 10
还是学习会更快乐~~~
是不是在 happy == 5
的时候去打了一局王者发现还是发现学习更加快乐,小编相信每一位粉丝都是这样的人。
示例代码
本系列的所有代码小编都会放在代码管理仓库 Github 和 Gitee 上,方便大家取用。
小白学 Python(8):基础流程控制(下)的更多相关文章
- 小白学 Python(7):基础流程控制(上)
人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...
- 小白学 Python(10):基础数据结构(列表)(下)
人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...
- 小白学 Python(13):基础数据结构(字典)(下)
人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...
- 小白学 Python(15):基础数据结构(集合)(下)
人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...
- 小白学 Python(17):基础数据类型(函数)(下)
人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...
- 小白学 Python(24):Excel 基础操作(下)
人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...
- 小白学 Python(6):基础运算符(下)
人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...
- 小白学 Python(3):基础数据类型(下)
人生苦短,我选Python 引言 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 前面我们介绍过了数字,本篇我们接着聊另一个常用的基础数据类型:字符串. ...
- 小白学 Python(9):基础数据结构(列表)(上)
人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...
随机推荐
- activity的隐式和显式启动
显式Intent(Explicit intent):通过指定Intent组件名称来实现的,它一般用在知道目标组件名称的前提下,一般是在相同的应用程序内部实现的. 隐式Intent(Implicit i ...
- Linux线程唤醒与等待
生产者消费者模式在程序设计中出现频率非常高,经常会有线程间通过消息队列或其他共享变量进行交互的场景.而这时就会出现一个问题,消费者如何知道生产者已经生产了数据呢?有的程序会采取消费者循环判断消息队列大 ...
- 使用$.getJSON()需要注意的地方
第一 JSON文件里面不能有任何注释,不能使用单引号,必须使用双引号: 第二 JSON文件名不能使用特殊字符 - ,比如 test-a.json 否则不会返回任何数据也不会报错. 使用方法: $.g ...
- asp.net core 使用Mysql和Dapper
序曲:学习编程最好的方式就是敲代码,没有比这个更好的方法,哪怕你看了上百G的视频,都不如你自己敲几行代码更为有效.还有要记得敲完代码然后写一篇随笔来记录一下你所学所想. 大家都知道,.netcore是 ...
- 品Spring:真没想到,三十步才能完成一个bean实例的创建
在容器启动快完成时,会把所有的单例bean进行实例化,也可以叫做预先实例化. 这样做的好处之一是,可以及早地发现问题,及早的抛出异常,及早地解决掉. 本文就来看下整个的实例化过程.其实还是比较繁琐的. ...
- sbt 学习笔记(1)sbt安装和交互式界面使用
下载sbt: http://www.scala-sbt.org/download.html 解压zip文件F:\sbt-0.13.15 配置环境变量 如果需要可以修改F:\sbt-0.13.15\sb ...
- MySQL日期和时间类型笔记
最近在看<MySQL技术内幕:SQL编程>并做了笔记,这是一篇笔记类型博客,分享出来方便自己复习,也可以帮助其他人 一.日期时间类型所占空间对比 各种日期时间数据类型所占的空间: 类型 所 ...
- 第三方登录之GitHub篇
第一步,准备工作.获取Client ID和Client Secret 1.自行登陆GitHub官网,点击Setting,如下图: 2.继续,点击Developer settings,如下图: 3.继续 ...
- python编程基础之三十六
文件处理:文件处理包括读文件,写文件 读文件: 1.打开文件 2.读取文件 3.关闭文件 写文件: 1.打开文件 2.写如文件 3.关闭文件 无论是读取文件还是写文件都时需要打开文件,和关闭文件 打开 ...
- RocketMQ事务消息学习及刨坑过程
一.背景 MQ组件是系统架构里必不可少的一门利器,设计层面可以降低系统耦合度,高并发场景又可以起到削峰填谷的作用,从单体应用到集群部署方案,再到现在的微服务架构,MQ凭借其优秀的性能和高可靠性,得到了 ...