引言

小伙伴们,在前面我们已经学习玩了基本的数据类型。有了这些知识,对于变量值的区分已经没有问题了。接下来带大家一起看看python中的流程控制,流程控制就是控制事物的执行流程。

流程控制的分类

  1. 顺序结构:从上往下依次执行,我们上几期写的代码都是顺序结构的。
a = 'dsa'
b = 'asda'
c = 'daad'
print(a, b, c)
# 顺序结构就是按照代码的先后顺序来执行的
  1. 分支结构:根据条件的判断做出不同的运行流程,适合于带有逻辑或判断或比较等条件判断的计算。
age = input('请输入你的年纪:')
if age > '18':
print('姐姐好')
else:
print('你妹的')
  1. 循环结构:根据条件判断反反复复的执行相同的事情,循环结构要设置一个停止条件,不然会进入死循环。
count = 0
while True:
print('你好帅!!!')
count += 1
if count > 5:
print('可以了帅够了吧!!!')
break

  1. 补充
  • 在python中使用缩进来表示代码的从属关系。
  • 不是所有的代码都可以拥有子代码。(从属代码)
  • 如果多行代码同属于父代码,那么这么多行代码具有相同缩进。
  • 缩进一般用4个空格表示,也可以直接用制表符(tab键)
  • 具有相同缩进的代码是兄弟关系,是按照顺序结构执行的。
  • 如果一行代码以冒号结束,那么新的一行一定带缩进,这也意味着结果处的冒号表示拥有子代码。

分支结构

单if结构

当只需要满足条件时的子代码时,建议使用单if结构

user_name = input('请输入你的用户名>>>:')
if user_name == 'king': # if 条件:
print('尊贵vip') # 条件成立之后执行的子代码(可以有多行)
graph TD
D(开始) --> A[输入用户名]
A --> B{输入用户名是否等于king}
B --> |True| C[尊贵vip]

if与else结构

当满足条件和不满足条件的子代码都需要时,建议用if与else结构

user_name = input('请输入你的用户名>>>:')
if user_name == 'king': # if 条件:
print('尊贵vip') # 条件成立之后执行的子代码(可以有多行)
else: # else:
print('滚') # 条件不成立之后执行的子代码(可以有多行)
graph TD
E(开始) --> A[输入用户名]
A --> B{输入用户名是否等于king}
B --> |True| C[尊贵vip]
B --> |False| D[滚]

if与elif与else结构

当满足不同条件有不同执行子代码时用if与elif与else结构,记住if分支语句只能多选一,当第一个条件满足后就不会看下面的条件了,当满足下面的条件就说明前面的条件没满足。

user_name = input('请输入你的用户名>>>:')
if user_name == 'king': # if 条件1:
print('尊贵vip') # 满足条件1执行的子代码
elif user_name == 'tom': # if 条件2:
print('管理员') # 满足条件2执行的子代码
else: # else:
print('滚') # 条件1条件2都不满足执行的子代码
graph TD
F(开始) --> A[输入用户名]
A --> B{输入用户名是否等于king}
B --> |条件1满足| C[尊贵vip]
B --> |条件2满足| D[管理员]
B --> |条件1条件2都不满足| E[滚]

if分支的嵌套

当判断完一个条件的前提下再进行下一个判断就要用到嵌套了。嵌套其实很简单,你要注意的是缩进。

age = 38
if age < 28:
print('小姐姐,我看你很久了加个微信。')
sit = input('同意为y>>>:')
if sit = 'y':
print('看电影')
else:
print('有缘再见')
else:
print('阿姨不好意思,我看错人了')
graph TD
G(开始) --> A[获取年龄]
A --> B{年龄是否小于28}
B --> |条件1满足| C[求微信]
B --> |条件1不满足| D[认错人了]
C --> |条件2满足| E[看电影]
C --> |条件2不满足| F[有缘见]

循环结构

while循环

while True:  # while 条件:
print('阿巴阿巴阿巴阿巴阿巴阿巴阿巴阿巴') # 满足条件执行的循环体代码
graph TD
c(开始) --> A[条件]
A --> |True| B[阿巴]
B --> A

while + break循环

在while循环中我们可以看到是一个恒成立的循环,这就成死循环了。因此要需要用到break来跳出本层循环。

while True:
print('阿巴阿巴阿巴阿巴阿巴阿巴阿巴阿巴')
break
graph TD
D(开始) --> A[条件]
A --> |True| B[阿巴]
B --> C[break]

while + continue循环

continue的作用是用于跳出本次循环的,相当于要做10天运动,但是第7天你满足肚子不舒服,那第7天就不做运动了,直接到第8天做。

count = 0
while count < 10:
if count == 3:
count += 1
continue
print(count)
count += 1
graph TD
C(开始) --> A[count < 10]
A --> |True| B[count == 3]
B --> |True| D[count += 1]
D --> E[continue]
B --> |False| F[print]
F --> G[count += 1]
G --> A

总结

来到流程控制就意味着我们可以开始写一些简单的小程序了,今天就到这了,我们下期见。

python中的流程控制的更多相关文章

  1. Python基础之:Python中的流程控制

    目录 简介 while语句 if 语句 for语句 Break Continue pass 简介 流程控制无非就是if else之类的控制语句,今天我们来看一下Python中的流程控制会有什么不太一样 ...

  2. Java中的流程控制(三)

    关于Java中的流程控制 关于Java中的流程控制 4.do while语句 do while语句的功能和while语句差不多,只不过它是在执行完第一次循环后才检测条件表达式的值,这意味着包含在大括号 ...

  3. python编程中的流程控制

    内容概要 成员运算 身份运算 流程控制 详细 1.成员运算 定义:判断某个个体在不在某个群体内 关键词:in(在) /// not in(不在) 例: num_list = [1, 2, 3, 4, ...

  4. Python学习(七) 流程控制if语句

    在Python中流程控制if语句采用如下格式: if expression : statement elif expression : statement elif expression : stat ...

  5. 从0开始的Python学习006流程控制

    流程控制语句 Python中有三种控制流程语句: if.for.和while. if语句 使用if语句来校验一个条件,如果条件为真(True),运行if-块,如果为假(False),运行else-块. ...

  6. python全栈 流程控制;while 循环 格式化输出 运算符 及编码

    python全栈开发 1循环 2break和continue的区别 3格式化输出 4运算符 5编码 一.流程控制while循环 while条件: 代码块(循环体) 1.死循环; while True; ...

  7. Python自动化开发 - 流程控制

    一.拾遗主题 1.变量 理解变量在计算机内存中的表示 >>> a = "ABC" Python解释器干了两件事情: 在内存中创建了一个'ABC'的字符串: 在内存 ...

  8. python基础之流程控制、数字和字符串处理

    流程控制 条件判断 if单分支:当一个“条件”成立时执行相应的操作. 语法结构: if 条件: command 流程图: 示例:如果3大于2,那么输出字符串"very good" ...

  9. Python编码、流程控制、格式化输出

    Python编码 初始编码: 电脑的传输,还有储存,实际上都是010101010 ASCII码: (American Standard Code for Information Interchange ...

随机推荐

  1. 深入学习python内存管理

    深入Python的内存管理   作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 语言的内存管理是语言设计的一个重要方面.它是决定语 ...

  2. jstl split 分割字符串?

    1. 在已经获得数据的前提下,对数据进行分割,分割后的结果是一个数组,可以通过数组获得我们需要的数据 2. value 是获得值 需要${} 的方式获取, var 是设置变量. var = " ...

  3. CKKS Part5: CKKS的重缩放

    本文翻译于 CKKS EXPLAINED, PART 5: RESCALING,主要介绍CKKS方案中最重要的技术- rescaling,重缩放技术 介绍 在CKKS的前一篇文章 CKKS Part4 ...

  4. Mysql Json函数之更新 (四)

    修改JSON值的函数 本节中的函数将修改JSON值并返回结果. JSON_APPEND(json_doc, path, val[, path, val] ...) 将值附加到JSON文档中指定数组的末 ...

  5. vue单页面应用打包后相对路径、绝对路径相关问题

    原文链接:  vue单页面应用打包后相对路径.绝对路径相关问题展开       在项目开发过程中,在部署过程中,用到了反向代理,这就要求前端代码中不能使用绝对路径.但是我们知道,一般情况下,通过web ...

  6. linux下打包所有文件,包括隐藏文件到压缩包

    命令如下: cd /root/test/ tar czvf test.tar.gz .[!.]* * 解释: tar czvf test.tar.gz * 压缩当前文件夹下非[隐藏文件]的文件 tar ...

  7. 微信小程序音频播放 InnerAudioContext 的用法

    今天项目上涉及到了微信小程序播放音频功能,所以今天跟着一些教程做了个简单的播放器 1.实现思路 刚开始想着有没有现成的组件可以直接用,找到了微信的媒体组件 audio,奈何看着 1.6.0版本开始,该 ...

  8. 【论文阅读笔记】-针对RSA的短解密指数的密码学分析(Cryptanalysis of Short RSA Secret Exponents)

    目录 1. 介绍 polynomially larger 2. 连分数背景知识 3. 连分数算法 4. 连分数算法在RSA中的应用 5. 例子 6. 对RSA连分数攻击的反制 7. 对于攻击的改进 8 ...

  9. 一加6刷入kali nethunter

    Installing Kali NetHunter On the OnePlus 6 准备工具: adb: https://jingyan.baidu.com/article/22fe7cedf67e ...

  10. 用Express 创建项目

    1.Node.js Express 框架安装:npm install express --save在当前目录下创建一个node_modules 2.安装必要的中间件npm install body-p ...