引言

小伙伴们,在前面我们已经学习玩了基本的数据类型。有了这些知识,对于变量值的区分已经没有问题了。接下来带大家一起看看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. 论文笔记——事件抽取之DMCNN

    1.事件抽取介绍: 事件在不同领域中有着不同的含义,对于事件目前还没有统一的定义.在IE ( Information Extraction) 中,事件是指在某个特定的时间片段和地域范围内发生的,由一个 ...

  2. 关于基于python2.7的unity自动化测试框架GAutomator测试环境的搭建(源码网盘下载地址:https://pan.baidu.com/s/1c2TXwtU)

    关于基于python 2.7的unity自动化测试框架GAutomator测试环境的搭建 百度云盘链接(思维图学习资料):https://pan.baidu.com/s/1dFWExMD 准备工作(具 ...

  3. 如何在pyqt中实现窗口磨砂效果

    磨砂效果的实现思路 这两周一直在思考怎么在pyqt上实现窗口磨砂效果,网上搜了一圈,全都是 C++ 的实现方法.正好今天查python的官方文档的时候看到了 ctypes 里面的 HWND,想想倒不如 ...

  4. 「SHOI2006」有色图

    首先发现这题虽然是边的置换,但是是由点的置换所造成的,并且发现点置换对应的所有边置换和置换操作构成置换群. 由于颜色可以全选,那么根据 Polya 定理,答案为: \[|X / G| = \frac{ ...

  5. super、this、抽象类、继承

    super 代表是父类对象,并且在创建子类对象时,就先创建父类对象,再创建子类对象,可以在子类方法中使用super调用父类的非私有方法. this 代表本类对象,谁创建就代表谁 实体类,被创建的cla ...

  6. 转载_认识C语言的32个关键字

    简单介绍: 1 auto : 声明自动变量 2 short :声明短整型变量或函数 3 int: 声明整型变量或函数 4 long :声明长整型变量或函数 5 float:声明浮点型变量或函数 6 d ...

  7. getter-setter方法练习

    // // Kline.h #import <Foundation/Foundation.h> @interface Kline : NSObject { int _max; // 最高价 ...

  8. C++输入多行数据

    动机 编程题常用需求,比如输入两行数据. 解决思路:使用getline 程序 #include <iostream> #include <vector> #include &l ...

  9. Ubuntu service 命令

    启动指定服务 sudo service 服务名 start 停止指定服务 sudo service 服务名 stop 重启指定服务 sudo service 服务名 start 查看所有服务 sudo ...

  10. 30天自制操作系统day2汇编语言

    <30天自制操作系统>一书中第1天和第二天中有关汇编语言的程序的理解 ; hello-os ; TAB=4 ORG 0x7c00 ; 指明程序的装载地址 ; 以下的记述用于标准FAT12格 ...