Python选择结构语法详解

简介: Python选择结构语法详解

文章目录



选择结构通过判断条件是否成立,来决定执行哪个分支。
选择结构有多种形式,分为:单分支、双分支、多分支。流程图如下:

d23364dff8b34a8ea776a528662cb3db.png

9f0bcee1702b4a2396b8c3a50ffd22b9.png

1.单分支选择结构


if 语句单分支结构的语法形式如下:


if 条件表达式:
    语句/语句块
1 .条件表达式:可以是逻辑表达式、关系表达式、算术表达式等等。
2 .语句/语句块:可以是一条语句,也可以是多条语句。多条语句,缩进必须对齐一致。
【操作】输入一个数字,小于 10,则打印这个数字(if_test01.py)
num = input("输入一个数字:")
if int(num)<10:
    print(num)



2 条件表达式详解


在选择和循环结构中,条件表达式的值为 False 的情况如下:
False、0、0.0、空值 None、空序列对象(空列表、空元祖、空集合、空字典、空字符串)、空 range 对象、空迭代对象。
其他情况,均为 True。这么看来,Python 所有的合法表达式都可以看做条件表达式,甚至包括函数调用的表达式。
【操作】测试各种条件表达式
if 3: #整数作为条件表达式
    print("ok")
a = [] #列表作为条件表达式,由于为空列表,是 False
if a:
    print("空列表,False")
s = "False" #非空字符串,是 True
if s:
    print("非空字符串,是 True")
c = 9
if 3<c<20:
    print("3<c<20")
if 3<c and c<20:
    print("3<c and c<20")
if True: #布尔值
    print("True")


执行结果如下:


09ca8222df1c47869ccccec9771864d9.png

条件表达式中,不能有赋值操作符“=”
在 Python 中,条件表达式不能出现赋值操作符“=”,避免了其他语言中经常误将关系运
算符“==”写作赋值运算符“=”带来的困扰。如下代码将会报语法错误:
if 3<c and (c=20):
    print("赋值符不能出现在条件表达式中")
SyntaxError: invalid syntax


3 双分支选择结构


双分支结构的语法格式如下:
if 条件表达式 :
    语句 1/语句块 1
else:
    语句 2/语句块 2



【操作】输入一个数字,小于 10,则打印该数字;大于 10,则打印“数字太大”


num = input("输入一个数字:")
if int(num)<10:
    print(num)
else:
    print("数字太大")


4 三元条件运算符


Python 提供了三元运算符,用来在某些简单双分支赋值情况。三元条件运算符语法格式如下:
条件为真时的值 if (条件表达式) else 条件为假时的值
上一个案例代码,可以用三元条件运算符实现:
num = input("请输入一个数字")
print( num if int(num)<10 else "数字太大")
可以看到,这种写法更加简洁,易读。



5.多分支选择结构


多分支选择结构的语法格式如下:


if 条件表达式 1 :
    语句 1/语句块 1
elif 条件表达式 2:
    语句 2/语句块 2
.
.
.
elif 条件表达式 n :
    语句 n/语句块 n
[else:
    语句 n+1/语句块 n+1
]


6.选择结构嵌套


选择结构可以嵌套,使用时一定要注意控制好不同级别代码块的缩进量,
因为缩进量决定了代码的从属关系。语法格式如下:
if 表达式 1:
    语句块 1
    if 表达式 2:
        语句块 2
    else:
        语句块 3
else:
    if 表达式 4:
        语句块 4


目录
相关文章
|
2天前
|
SQL 数据可视化 算法
【python分析实战】成本:揭示电商平台月度开支与成本结构占比 - 过于详细 【收藏】
【python分析实战】成本:揭示电商平台月度开支与成本结构占比 - 过于详细 【收藏】
|
4天前
|
算法 Python Windows
【Python学习篇】Python实验小练习——选择结构(七)
【Python学习篇】Python实验小练习——选择结构(七)
8 1
|
4天前
|
存储 Python
【Python学习篇】Python基础入门学习——Python基础语法(二)
【Python学习篇】Python基础入门学习——Python基础语法(二)
12 1
|
4天前
|
算法 大数据 开发者
深入理解 Python3 函数:从基础语法到高级应用
深入理解 Python3 函数:从基础语法到高级应用
|
4天前
|
数据处理 Python
掌握 Python 条件控制:从基础语法到高级应用
掌握 Python 条件控制:从基础语法到高级应用
|
4天前
|
存储 数据库连接 API
掌握 Python 字典:从基础语法到实战应用的全面指南
掌握 Python 字典:从基础语法到实战应用的全面指南
|
4天前
|
存储 NoSQL MongoDB
深入解析 MongoDB 与 Python:基本语法、实用示例与最佳实践
深入解析 MongoDB 与 Python:基本语法、实用示例与最佳实践
|
7天前
|
Python
4.Python 程序结构
4.Python 程序结构
|
7天前
|
Python 容器
2.Python 基础语法、数据类型和变量
2.Python 基础语法、数据类型和变量
10 0
|
7天前
|
JSON 数据格式 索引
Python学习之路 | Python基础语法(二)
Python学习之路 | Python基础语法(二)
7 0