python中的流程控制
引言
小伙伴们,在前面我们已经学习玩了基本的数据类型。有了这些知识,对于变量值的区分已经没有问题了。接下来带大家一起看看python中的流程控制,流程控制就是控制事物的执行流程。
流程控制的分类
- 顺序结构:从上往下依次执行,我们上几期写的代码都是顺序结构的。
a = 'dsa'
b = 'asda'
c = 'daad'
print(a, b, c)
# 顺序结构就是按照代码的先后顺序来执行的
- 分支结构:根据条件的判断做出不同的运行流程,适合于带有逻辑或判断或比较等条件判断的计算。
age = input('请输入你的年纪:')
if age > '18':
print('姐姐好')
else:
print('你妹的')
- 循环结构:根据条件判断反反复复的执行相同的事情,循环结构要设置一个停止条件,不然会进入死循环。
count = 0
while True:
print('你好帅!!!')
count += 1
if count > 5:
print('可以了帅够了吧!!!')
break
- 补充
- 在python中使用缩进来表示代码的从属关系。
- 不是所有的代码都可以拥有子代码。(从属代码)
- 如果多行代码同属于父代码,那么这么多行代码具有相同缩进。
- 缩进一般用4个空格表示,也可以直接用制表符(tab键)
- 具有相同缩进的代码是兄弟关系,是按照顺序结构执行的。
- 如果一行代码以冒号结束,那么新的一行一定带缩进,这也意味着结果处的冒号表示拥有子代码。
分支结构
单if结构
当只需要满足条件时的子代码时,建议使用单if结构
user_name = input('请输入你的用户名>>>:')
if user_name == 'king': # if 条件:
print('尊贵vip') # 条件成立之后执行的子代码(可以有多行)
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('滚') # 条件不成立之后执行的子代码(可以有多行)
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都不满足执行的子代码
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('阿姨不好意思,我看错人了')
G(开始) --> A[获取年龄]
A --> B{年龄是否小于28}
B --> |条件1满足| C[求微信]
B --> |条件1不满足| D[认错人了]
C --> |条件2满足| E[看电影]
C --> |条件2不满足| F[有缘见]
循环结构
while循环
while True: # while 条件:
print('阿巴阿巴阿巴阿巴阿巴阿巴阿巴阿巴') # 满足条件执行的循环体代码
c(开始) --> A[条件]
A --> |True| B[阿巴]
B --> A
while + break循环
在while循环中我们可以看到是一个恒成立的循环,这就成死循环了。因此要需要用到break来跳出本层循环。
while True:
print('阿巴阿巴阿巴阿巴阿巴阿巴阿巴阿巴')
break
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
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中的流程控制的更多相关文章
- Python基础之:Python中的流程控制
目录 简介 while语句 if 语句 for语句 Break Continue pass 简介 流程控制无非就是if else之类的控制语句,今天我们来看一下Python中的流程控制会有什么不太一样 ...
- Java中的流程控制(三)
关于Java中的流程控制 关于Java中的流程控制 4.do while语句 do while语句的功能和while语句差不多,只不过它是在执行完第一次循环后才检测条件表达式的值,这意味着包含在大括号 ...
- python编程中的流程控制
内容概要 成员运算 身份运算 流程控制 详细 1.成员运算 定义:判断某个个体在不在某个群体内 关键词:in(在) /// not in(不在) 例: num_list = [1, 2, 3, 4, ...
- Python学习(七) 流程控制if语句
在Python中流程控制if语句采用如下格式: if expression : statement elif expression : statement elif expression : stat ...
- 从0开始的Python学习006流程控制
流程控制语句 Python中有三种控制流程语句: if.for.和while. if语句 使用if语句来校验一个条件,如果条件为真(True),运行if-块,如果为假(False),运行else-块. ...
- python全栈 流程控制;while 循环 格式化输出 运算符 及编码
python全栈开发 1循环 2break和continue的区别 3格式化输出 4运算符 5编码 一.流程控制while循环 while条件: 代码块(循环体) 1.死循环; while True; ...
- Python自动化开发 - 流程控制
一.拾遗主题 1.变量 理解变量在计算机内存中的表示 >>> a = "ABC" Python解释器干了两件事情: 在内存中创建了一个'ABC'的字符串: 在内存 ...
- python基础之流程控制、数字和字符串处理
流程控制 条件判断 if单分支:当一个“条件”成立时执行相应的操作. 语法结构: if 条件: command 流程图: 示例:如果3大于2,那么输出字符串"very good" ...
- Python编码、流程控制、格式化输出
Python编码 初始编码: 电脑的传输,还有储存,实际上都是010101010 ASCII码: (American Standard Code for Information Interchange ...
随机推荐
- python 裴伯拉切数列
裴伯拉切数列:从第三个元素开始,每个元素为该元素前面的两个元素的和. 裴伯拉切数列:0,1,1,2,3,5,8,13,21,34,55...... 求出小于n的裴伯拉切数列. def fibo(n): ...
- Java方法内联
一.概念 方法内联就是把调用方函数代码"复制"到调用方函数中,减少因函数调用开销的技术 函数调用过程 1.首先会有个执行栈,存储它们的局部变量.方法名.动态连接 2.当一个方法 ...
- 3. hive 常用函数
常用日期函数 1.返回当前或指定时间的时间戳 select unix_timestamp();select unix_timestamp("2020-10-28",'yyyy-MM ...
- Thread的打断
常用方法 public void interrupt() t.interrupt() 打断t线程(设置t线程某给标志位f=true,并不是打断线程的运行),不能打断正在竞争锁的线程. public b ...
- 【转】C# / Extension 扩展方法
扩展方法简介扩展方法使你能够向现有类型"添加"方法,而无需创建新的派生类型.重新编译或以其他方式修改原始类型. 扩展方法是一种特殊的静态方法,但可以像扩展类型上的实例方法一样进行调 ...
- Android 动态申请权限问题【转】
Android 动态申请权限问题 感谢大佬:https://www.jianshu.com/p/2324a2bdb3d4 感谢大佬:https://blog.csdn.net/weixin_42910 ...
- Linux-标准输入标准输出
标准输入(代码为0) 标准输出(代码为1) 标准错误输出(代码为2) 将标准输出重定向到一个文件 find /etc -name fileA >list 等同于 find /etc -name ...
- C++改变数组长度
C++改变数组长度 代码 //改变数组长度 #ifndef CHANGELENGTH1D_H #define CHANGELENGTH1D_H #include<stdexcept> #i ...
- C++学习笔记_complex类的实现
头文件中的防卫式声明 点击查看代码 #ifndef __COMPLEX__ #define __COMPLEX__ class complex { } #endif 类的定义 点击查看代码 class ...
- MySQL之视图篇
MySQL之视图篇 文章目录 MySQL之视图篇 1. 概述 1.1 为什么使用视图? 1.2 视图的理解 2. 创建视图 2.1 创建单表视图 2.2 针对于多表 2.3 基于视图创建视图 3. 查 ...