注意

本篇图片素材都来自慕课网,因为素材过于优秀,直接拿过来了,加水印只是为了防止整篇文章被搬

前言

程序并非是一成不变的向下执行,有的时候也要根据条件的不同选择不一样的代码,这个时候便用到了分支结构

最简单的分支结构

对条件进行判断:

  • 如果条件为真,执行“条件为真的分支”
  • 如果条件为假,执行“条件为假的分支”

if ... else ... 语句

Python 提供了 if 条件控制语句用于选择执行流程

if 条件:
条件为真的分支
else:
条件为假的分支

可以选择不带 else 分支

if 条件:
条件为真的分支

代码栗子一

# 栗子一
if 2 > 1:
print('2 > 1 is true')
else:
print('2 > 1 is false') # 输出结果
2 > 1 is true

代码栗子二

# 栗子二
lis = [1, 2, 3, 4]
if len(lis) > 5:
print('列表长度大于 5')
else:
print('列表长度小于 5') # 输出结果
列表长度小于 5

代码栗子三

if 1 == 1:
print('1 == 1 is true') # 输出结果
1 == 1 is true

多分支选择结构

对多个条件进行判断:

  • 如果条件 1 为真,则执行代码块 1
  • 如果条件 2 为真,则执行代码块 2
  • 如果条件 3 为真,则执行代码块 3
  • 如果以上条件都不满足,则执行代码块 4

if ... elif .. elif .. else .. 语句

if 条件 1:
代码块 1
elif 条件 2:
代码块 2
elif 条件 3:
代码块 3
else:
代码块 4

不带 else 分支

if 条件 1:
代码块 1
elif 条件 2:
代码块 2
elif 条件 3:
代码块 3

代码栗子

# 栗子一
from random import randint res = randint(0, 4)
if res == 0:
print('num is 0', res)
elif res == 1:
print('num is 1', res)
elif res == 2:
print('num is 2', res)
elif res == 3:
print('num is 3', res)
else:
print('num is 4', res) # 输出结果
num is 2 2

randint 是返回随机整数

分支嵌套结构

程序首先判断条件 1 是否为真

如果条件 1 为真,则判断条件 2 是否为真

  • 条件 1 为真并且条件 2 为真,执行代码块 1
  • 条件 1 为真并且条件 2 为假,执行代码块 2

如果条件 1 为假,则判断条件 3 是否为真

  • 条件 1 为假并且条件 3 为真,执行代码块 3
  • 条件 1 为假并且条件 3 为假,执行代码块 4

代码栗子

# 分支嵌套结构
from random import randint res1 = randint(0, 1)
res2 = randint(0, 1)
if res1 == 0:
if res2 != 0:
print("0,1")
else:
print("0,0")
else:
if res2 > 0:
print("1,1")
else:
print("1,0") # 输出结果
1,0

扩展:random 模块详解

https://www.cnblogs.com/poloyy/p/14845553.html

Python - if 条件控制的更多相关文章

  1. 产品经理学Python:条件控制

    条件控制其实就是if...else...(如果...条件是成立的,就做...:反之,就做...)的使用,其基本结构是: 具体看下面这个例子: def account_login(): # 定义函数 p ...

  2. Python的条件控制及循环

    一.条件控制: 1.If语句的使用: Python中if语句的一般形式如下所示: 上图中: 如果 "score>=90" 为 True 将执行 "print(‘优秀 ...

  3. python学习 条件控制

    if - else  if 条件a : 内容a else : 内容 非a if - elif - else  if 条件a : 内容a elif 条件b: 内容b-a else : 内容 非(a∪b) ...

  4. Python3.5入门学习记录-条件控制

    Python的条件控制同C#一样,都是通过一条或多条语句的执行结果(True OR False)来决定执行的代码块. if 语句 Python中if语句的一般形式如下所示: if condition_ ...

  5. Python学习--04条件控制与循环结构

    Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...

  6. python基础之条件控制与循环

    Python3 条件控制 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. 比如,输入用户 ...

  7. python条件控制

    条件控制 现在我们写这样一个程序:在程序里设定好你的年龄,然后启动程序让用户猜测,用户输入后,根据他的输入提示用户输入的是否正确,如果错误,提示是猜大了还是小了 my_age = 24 user_in ...

  8. python字典和条件控制

    元组tuple 元组其实跟列表差不多,也是存一组数,只不是它一旦创建,便不能再修改,所以又叫只读列表 注意单个tuple元素的时候,元素后面要加",",否则python解析器不会识 ...

  9. Python 条件控制

    Python  条件控制 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: if 语句 Python中if语 ...

随机推荐

  1. 【模拟7.14】B. 熟练剖分(tree) (概率DP)

    一道概率神题,考试时没读清题考完看了学长的玄学题解看了好几个小时 首先f[i][j]表示在点 i 为根的子树中,向下最长轻链长度小于等于 j 的概率. 首先递归下去并求出子树大小,然后枚举重儿子,枚举 ...

  2. 【题解】Luogu P2327 [SCOI2005]扫雷

    Luogu P2327 [SCOI2005]扫雷 Description 相信大家都玩过扫雷的游戏.那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来.万圣节到了,"余" ...

  3. 如何开启O2优化

    O2环境会使你的程序跑的特别快,然而大多数正式考试都不能开O2 然而平时做有些题强制开O2,会出现在本机运行正确,但是交上去RE的情况,这时你就要开O2了. 例如在本机运行时会有下标为-但可以运行,而 ...

  4. 36、mysql数据库(dml)

    36.1.表记录的增删改: 1.增加表记录: insert[into]tab_name (field1,filed2,.......) values (value1,value2,.......); ...

  5. QL Server 创建用户时报错:15023 用户,组或角色'XXX'在当前数据库中已存在?

    在使用SQL Server 2000时,我们经常会遇到一个情况:需要把一台服务器上的数据库转移到另外一台服务器上.而转移完成后,需要给一个"登录"关联一个"用户" ...

  6. Docker搭建zabbix+grafana监控系统

    一.准备工作 1.mysql数据库:192.168.1.5 2.nginx服务:192.168.1.10 3.docker服务器:192.168.1.20 4.zabbix客户端若干 二.docker ...

  7. ROS2学习之旅(1)——初识ROS2

    本系列用来记录ROS2的学习过程,有错误或者不合理的地方请大家指正.由于博主具有ROS1的学习经历,会添加一些与ROS1的一些对比,当然这对于ROS2本身的学习内容没有丝毫影响,欢迎大家积极与我在评论 ...

  8. Docker安装rabbitMQ主从

    环境准备 Centos 7.5虚拟机三台: 192.168.102.128 192.168.102.130 192.168.102.131 以上虚拟机统一安装docker环境 三台机器分别配置如下所示 ...

  9. CentOS-配置JDK(压缩包)

    卸载openjdk $ rpm -qa | grep jdk 以上命令用来检查linux上是否安装openjdk,如果安装需要将其全部卸载掉,卸载命令: $ rpm -e --nodeps java- ...

  10. Docker:Docker部署postgresql数据库

    环境 Centos-7  Postgresql-10 docker-19 yum加载Postgresql yum install https://download.postgresql.org/pub ...