引言

小伙伴们,在前面我们已经学习玩了基本的数据类型。有了这些知识,对于变量值的区分已经没有问题了。接下来带大家一起看看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. KL散度非负性证明

    1 KL散度 KL散度(Kullback–Leibler divergence) 定义如下: $D_{K L}=\sum\limits_{i=1}^{n} P\left(x_{i}\right) \t ...

  2. 字体替换 re.sub

    dic={'hqo3r': '迎', 'hq6ic': '名', 'hq7yw': '头', 'hq1lk': '新', 'hqpe1': '肇'} content=''' 总体hqo3r则,错的注( ...

  3. 解读WPF中的Binding

    1.Overview 基于MVVM实现一段绑定大伙都不陌生,Binding是wpf整个体系中最核心的对象之一这里就来解读一下我花了纯两周时间有哪些秘密.这里我先提出几个问题应该是大家感兴趣的,如下: ...

  4. [免费下载应用]iNeuKernel.Ocr 图像数据识别与采集原理和产品化应用

    目       录 1..... 应用概述... 2 2..... 免费下载试用... 2 3..... 视频介绍... 2 4..... iNeuLink.Ocr图像数据采集应用... 2 5... ...

  5. JAVA变量的数据类型

    1. 整型 byte   代表一个字节的大小   8bit  2(8)   -128~127        256 short  代表两个字节的大小  16bit  2(16)  -2(15)~2(1 ...

  6. 超详细的node/v8/js垃圾回收机制

    前言 垃圾回收器是一把十足的双刃剑.其好处是可以大幅简化程序的内存管理代码,因为内存管理无需程序员来操作,由此也减少了(但没有根除)长时间运转的程序的内存泄漏.对于某些程序员来说,它甚至能够提升代码的 ...

  7. JFrame实现圆角窗体

    感谢大佬:https://blog.csdn.net/Mr_Pang/article/details/47808299?utm_source=blogxgwz0 注:使用AWTUtilities类跨平 ...

  8. js图片预览代码

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. Linux防火墙firewalld安全设置

    背景描述 防火墙是具有很好的保护作用.入侵者必须首先穿越防火墙的安全防线,才能接触目标计算机.在公司里数据安全是最重要的,要求安全部门进行全公司进行服务器防火墙安全搭建,在原有的基础上进行安全的防火墙 ...

  10. Java中的常用的输入输出流

    Java中的输入输出流根据格式又可以分为字节流和字符流:(成对) 字节流:FileInputStream,FileOutputStream   :  BufferedInputStream,Buffe ...