Python - if 条件控制

2021-08-06 10:26:48 浏览数 (1)

注意

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

前言

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

最简单的分支结构

对条件进行判断:

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

if ... else ... 语句

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

代码语言:javascript复制
if 条件:
    条件为真的分支
else:
    条件为假的分支
可以选择不带 else 分支
代码语言:javascript复制
if 条件:
    条件为真的分支
代码栗子一
代码语言:javascript复制
# 栗子一
if 2 > 1:
    print('2 > 1 is true')
else:
    print('2 > 1 is false')


# 输出结果
2 > 1 is true
代码栗子二
代码语言:javascript复制
# 栗子二
lis = [1, 2, 3, 4]
if len(lis) > 5:
    print('列表长度大于 5')
else:
    print('列表长度小于 5')


# 输出结果
列表长度小于 5
代码栗子三
代码语言:javascript复制
if 1 == 1:
    print('1 == 1 is true')


# 输出结果
1 == 1 is true

多分支选择结构

对多个条件进行判断:

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

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

代码语言:javascript复制
if 条件 1:
    代码块 1
elif 条件 2:
    代码块 2
elif 条件 3:
    代码块 3
else:
    代码块 4
不带 else 分支
代码语言:javascript复制
if 条件 1:
    代码块 1
elif 条件 2:
    代码块 2
elif 条件 3:
    代码块 3
代码栗子
代码语言:javascript复制
# 栗子一
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

代码栗子

代码语言:javascript复制
# 分支嵌套结构
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://cloud.tencent.com/developer/article/1833816

0 人点赞