python 基础篇 day 4 选择结构—— if 结构

文章目录

  • [if 基础结构](#if 基础结构)
      • [单 if 语句](#单 if 语句)
      • [if-else 语句](#if-else 语句)
      • [if-elif-else 语句](#if-elif-else 语句)
      • [嵌套的 if 语句](#嵌套的 if 语句)
  • [if 进阶用法](#if 进阶用法)
  • 三目运算符

if 基础结构

单 if 语句

if 条件:

执行条件为真时的代码块

当条件为真时,执行相应的代码块。

if-else 语句

if 条件:

执行条件为真时的代码块

else:

执行条件为假时的代码块

当条件为真时,执行第一个代码块;当条件为假时,执行第二个代码块。

if-elif-else 语句

if 条件1:

执行条件1为真时的代码块

elif 条件2:

执行条件2为真时的代码块

elif 条件3:

执行条件3为真时的代码块

...

else:

执行以上条件都不满足时的代码块

当条件1为真时,执行第一个代码块;否则,继续检查条件2。如果条件2为真,则执行第二个代码块;以此类推。如果所有条件都不满足,则执行 else 代码块。

嵌套的 if 语句

python 复制代码
if 条件1:
    # 执行条件1为真时的代码块
    if 条件2:
        # 执行条件1和条件2同时满足时的代码块
    else:
        # 执行条件1为真而条件2不满足时的代码块
else:
    # 执行条件1不满足时的代码块

可以在一个 if 代码块内嵌套另一个 if 语句,用于处理更复杂的条件逻辑。

if 进阶用法

使用比较运算符

if a == b:

当 a 等于 b 时执行的代码块

if a != b:

当 a 不等于 b 时执行的代码块

if a > b:

当 a 大于 b 时执行的代码块

if a < b:

当 a 小于 b 时执行的代码块

if a >= b:

当 a 大于等于 b 时执行的代码块

if a <= b:

当 a 小于等于 b 时执行的代码块

比较运算符用于在条件语句中比较两个值的大小关系。

使用逻辑运算符

if 条件1 and 条件2:

当条件1和条件2同时满足时执行的代码块

if 条件1 or 条件2:

当条件1或条件2之一满足时执行的代码块

if not 条件:

当条件不满足时执行的代码块

逻辑运算符用于组合多个条件,进行复合条件判断。

使用 in 关键字

if 元素 in 可迭代对象:

当元素存在于可迭代对象中时执行的代码块

in 关键字用于检查一个元素是否存在于可迭代对象中,常常配合range使用

常见可迭代对象:列表(List),元组(Tuple),range 对象等

range() 是 Python 内置的一个函数,用于生成指定范围的整数序列。它常用于循环结构中,例如 for 循环,以便按照指定的起始值、终止值和步长来迭代生成整数。

range() 函数

range(start, stop, step)

参数说明:

start:可选,表示序列的起始值,默认为 0。

stop:必需,表示序列的终止值(不包含在序列中)。

step:可选,表示步长(默认为1)。步长可以是正整数、负整数或零。
range() 函数返回一个表示整数序列的可迭代对象,可以通过遍历该可迭代对象获取序列中的每个元素。

示例:

python 复制代码
 #  生成从 0 到 4 的整数序列
for num in range(5):
    print(num)  # 输出:0, 1, 2, 3, 4

#  生成从 2 到 9(不包含 9)的整数序列,步长为 3
for num in range(2, 9, 3):
    print(num)  # 输出:2, 5, 8

#  生成递减的整数序列,从 10 到 1(不包含 1)
for num in range(10, 1, -1):
    print(num)  # 输出:10, 9, 8, 7, 6, 5, 4, 3, 2

需要注意的是,range() 函数生成的序列不包含终止值。如果需要包含终止值,可以在循环中使用 stop + 1 或者转换为列表等其他数据结构。

使用 is 关键字

is 关键字用于检查两个对象是否引用同一个内存地址。

python 复制代码
if 对象 is None:
    # 当对象为 None 时执行的代码块

使用 pass 语句

python 复制代码
if 条件:
    pass

pass 语句什么也不做,通常用作占位符,表示后续需要添加代码。

三目运算符

Python 的三目运算符一种简洁的条件表达式,也称为条件运算符

语法

[如果满足条件时返回的值] if [条件] else [如果条件不满足时返回的值]

其中,[条件] 是一个可以求值为布尔值的表达式。如果该条件为真,则返回 [如果满足条件时返回的值];否则返回 [如果条件不满足时返回的值]。

例子

python 复制代码
x = 10
result = "正数" if x > 0 else "非正数"
print(result)  # 输出:正数

在上面的例子中,如果 x 大于 0,那么 "正数" 将被赋值给 result;否则,"非正数" 将被赋值给 result。

注意

使用三目运算符可以简化代码,特别适用于简单的条件判断场景。但要注意,过度使用可能导致代码难以理解。

补充

Python 中没有官方支持的四目运算符。三目运算符是 Python 中唯一条件表达式。它可以在一个表达式中根据条件选择返回不同的值。

四目运算符不是 Python 内置的语法,但你可以使用其他方式来实现其功能。

一种常见的方法是使用嵌套的三目运算符来模拟四目运算符

举例
python 复制代码
x = 10
result = "正数" if x > 0 else ("零" if x == 0 else "负数")
print(result)  # 输出:正数

在上面的例子中,我们使用嵌套的三目运算符来实现一个四目运算符的效果。首先判断 x > 0,如果为真,则返回 "正数";否则继续判断 x ==

0,如果为真,则返回 "零";否则返回 "负数"。

注意

虽然这种方式可以实现类似于四目运算符的功能,但嵌套的三目运算符容易造成代码难以理解和调试。因此,在实际编程中,推荐使用更清晰和易于理解的方式来表达条件判断逻辑,如使用

if...elif...else 结构。

相关推荐
大脸猫吖7 分钟前
Selenium4.0实现自动搜索功能
python·selenium·自动化
你可以自己看11 分钟前
python中数据处理库,机器学习库以及自动化与爬虫
python·机器学习·自动化
kolaseen30 分钟前
pytorch的动态计算图机制
人工智能·pytorch·python·深度学习·机器学习
约束11234 分钟前
ipynb脚本是运行在本地还是云端?
python·jupyter
QXH2000001 小时前
数据预处理方法—数据标准化和数据归一化
人工智能·python·深度学习·机器学习
一丝晨光1 小时前
语言的循环语句
java·c++·python·c#·c·fortran·algol
NuyoahC1 小时前
Python语法(二)——函数
开发语言·笔记·python
weixin_750335521 小时前
Datawhale X 南瓜书 task02学习笔记
笔记·python·学习
masterMono2 小时前
使用python对图像批量水平变换和垂直变换
python·opencv·计算机视觉
蜡笔小流2 小时前
Flask 第六课 -- 路由
后端·python·flask