小白学 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):变 ...
随机推荐
- Linux线程唤醒与等待
生产者消费者模式在程序设计中出现频率非常高,经常会有线程间通过消息队列或其他共享变量进行交互的场景.而这时就会出现一个问题,消费者如何知道生产者已经生产了数据呢?有的程序会采取消费者循环判断消息队列大 ...
- 指针生产网络(Pointer-Generator-Network)原理与实战
0 前言 本文内容主要:介绍Pointer-Generator-Network在文本摘要任务中的背景,模型架构与原理.在中英文数据集上实战效果与评估,最后得出结论.参考的<Get To The ...
- loadrunner12下载、安装、认证、汉化
友情提示 推荐工具pandownload下载 本文尽可能地写得详细一些,有不懂的请先自行百度 安装过程中会有大量英文,可以用有道词典截图翻译 若你的电脑只有一个分区,则建议所有位置选择默认,或者根据个 ...
- commons-beanutils.jar及其支持文件
下载地址: 链接:https://pan.baidu.com/s/1AtiK3nsk0aBuBfMdNwBVGw 密码:6tul
- 前端获取后台传输过来是数据 {张三:12} 解析为[object object],获取其中内容
昨天遇到前端传输过来的数据为[{张三:12},{李四:23}],后台用的是map格式,我在前端js中暂未找到直接调用对象内容的方法,故利用以下方法来获取: $.each(data.data,funct ...
- idea 启动springboot项目报找不到主类
今天搭建的一个新springboot项目,运行启动类时控制报找不到主类错误 解决方法: 在idea控制台输入mvn clean install命令
- 【SQL server初级】数据库性能优化一:数据库自身优化(大数据量)
数据库优化包含以下三部分,数据库自身的优化,数据库表优化,程序操作优化.此文为第一部分 数据库性能优化一:数据库自身优化 优化①:增加次数据文件,设置文件自动增长(粗略数据分区) 1.1:增加次数据文 ...
- 理解JS引擎的执行机制
首先,请牢记2点: (1) JS是单线程语言 (2) JS的Event Loop是JS的执行机制.深入了解JS的执行,就等于深入了解JS里的event loop 1.灵魂三问 : JS为什么是单线程的 ...
- Activiti(1) - TaskRuntime API 入门
目录 TaskRuntime API pom.xml 注册TaskRuntime实例 角色与分组 任务事件监听器 DemoApplication 源码 Activiti 是一个自动化工作流框架.它能帮 ...
- MySQL数据库从复制及企业配置实践
在实际生产中,数据的重要性不言而喻: 如果我们的数据库只有一台服务器,那么很容易产生单点故障的问题,比如这台服务器访问压力过大而没有响应或者奔溃,那么服务就不可用了,再比如这台服务器的硬盘坏了,那么整 ...