python-判断语句if及条件表达式(三元运算符)

转载请标明出处


文章目录

  • python-判断语句if及条件表达式(三元运算符)
  • 基本判断语句的使用
  • 使用逻辑运算符`and`,`or`,`not`
  • 简化的条件表达式(三元运算符)
  • 判断语句与基本数据类型的结合



本章节将详细讲述python中判断语句的使用,并且结合了前面所学的基本数据类型及其内置函数和方法。

基本判断语句的使用

  1. if语句:
    if语句用于检查条件是否为真,如果条件为真,则执行相应的代码块。
    语法:
if condition:
    # 执行语句块

示例:

age = 18
if age >= 18:
    print("你已经成年了")

输出:

你已经成年了
  1. if else语句:
    if else语句用于在条件为真时执行一个代码块,在条件为假时执行另一个代码块。
    语法:
if condition:
    # 条件为真时执行的代码块
else:
    # 条件为假时执行的代码块

示例:

age = 15
if age >= 18:
    print("你已经成年了")
else:
    print("你还未成年")

输出:

你还未成年
  1. if elif else语句:
    if elif else语句用于在多个条件之间进行选择,并根据条件执行相应的代码块。
    语法:
if condition1:
    # 条件1为真时执行的代码块
elif condition2:
    # 条件2为真时执行的代码块
else:
    # 所有条件均为假时执行的代码块

示例:

num = 0
if num > 0:
    print("正数")
elif num < 0:
    print("负数")
else:
    print("零")

输出:

  1. 嵌套的if语句:
    可以在一个ifelse代码块中嵌套另一个if语句,用于进行更复杂的条件判断。
    示例:
age = 21
if age >= 18:
    print("你已经成年了")
    if age >= 21:
        print("你已经可以合法地购买酒精饮料了")
else:
    print("你还未成年")

输出:

你已经成年了
你已经可以合法地购买酒精饮料了

这些是关于ifif else语句的基本知识点和示例代码。根据具体的需求和条件,你可以使用它们来实现不同的逻辑。

使用逻辑运算符and,or,not

当需要在一个 if 语句中使用多个条件时,可以通过逻辑运算符将它们组合起来。常用的逻辑运算符有 andornot

  • and 运算符:如果所有条件都为真,则结果为真;如果至少一个条件为假,则结果为假。
  • or 运算符:如果至少一个条件为真,则结果为真;如果所有条件都为假,则结果为假。
  • not 运算符:对单个条件进行取反操作,如果条件为真,则结果为假;如果条件为假,则结果为真。

以下是关于在一个 if 语句中使用多个条件的示例代码:

age = 25
gender = 'female'

if age >= 18 and gender == 'female':
    print("成年女性")
else:
    print("未满足条件")

country = 'US'
language = 'English'

if country == 'US' or language == 'English':
    print("美国或者使用英语")
else:
    print("未满足条件")

name = 'Alice'

if not name:
    print("姓名为空")
else:
    print("姓名不为空")

输出结果:

成年女性
美国或者使用英语
姓名不为空

在第一个示例中,我们使用 and 运算符将两个条件组合起来,判断年龄是否大于等于 18 并且性别是否为女性。只有当两个条件都为真时,条件表达式才为真。

在第二个示例中,我们使用 or 运算符将两个条件组合起来,判断国家是否为美国或者语言是否为英语。只要其中至少一个条件为真,条件表达式就为真。

在第三个示例中,我们使用 not 运算符对条件进行取反操作,判断姓名是否为空。只有当条件为假时,即姓名不为空时,条件表达式才为真。

通过使用逻辑运算符,我们可以在一个 if 语句中对多个条件进行组合判断,根据需求编写更复杂的条件逻辑。

简化的条件表达式(三元运算符)

简化的条件表达式,也称为三元运算符,允许在一行代码中根据条件选择不同的值。它的基本形式是 value_if_true if condition else value_if_false

  • condition 是一个布尔表达式,用于判断条件是否为真。
  • 如果 condition 为真,则返回 value_if_true 的值。
  • 如果 condition 为假,则返回 value_if_false 的值。

以下是关于简化的条件表达式的示例代码:

age = 20
status = "成年" if age >= 18 else "未成年"
print(status)

num = 5
result = "正数" if num > 0 else "负数或零"
print(result)

x = 10
y = 20
max_value = x if x > y else y
print(max_value)

输出结果:

成年
正数
20

在第一个示例中,我们根据年龄判断一个人是否成年,使用条件表达式将结果赋值给变量 status。如果年龄大于等于 18,则返回 “成年”;否则返回 “未成年”。

在第二个示例中,我们根据数字的正负性使用条件表达式将结果赋值给变量 result。如果数字大于 0,则返回 “正数”;否则返回 “负数或零”。

在第三个示例中,我们比较两个变量 xy 的值,并使用条件表达式将较大的值赋给变量 max_value

通过使用简化的条件表达式,我们可以在一行代码中根据条件选择不同的值,使代码更加简洁和易读。它常用于简单的条件赋值或返回结果的情况。

判断语句与基本数据类型的结合

当使用判断语句与Python中的列表、元组、集合和字典结合时,可以使用它们的内置函数和方法来操作和判断数据。以下是一些示例代码,展示了如何结合判断语句和这些数据类型的内置函数和方法:

  1. 使用判断语句和列表:
fruits = ['apple', 'banana', 'orange']

# 使用内置函数 len() 判断列表长度
if len(fruits) > 0:
    print("列表不为空")
else:
    print("列表为空")

# 使用 in 关键字判断元素是否存在于列表中
if 'apple' in fruits:
    print("水果列表中包含苹果")

# 使用内置方法 append() 添加元素到列表
if len(numbers) < 10:
    numbers.append(6)
    print(numbers)
  1. 使用判断语句和元组:
numbers = (1, 2, 3, 4, 5)

# 使用内置函数 len() 判断元组长度
if len(numbers) > 0:
    print("元组不为空")
else:
    print("元组为空")

# 使用索引判断元素是否存在于元组中
if numbers[0] == 1:
    print("元组的第一个元素是1")

person = ('Alice', 25, 'USA')

# 使用内置方法 index() 查找元组中元素的索引
if person.index('USA') >= 0:
    print("元组中包含 'USA'")

# 使用内置方法 count() 统计元组中元素的出现次数
if person.count('Alice') > 0:
    print("元组中 'Alice' 出现过")
  1. 使用判断语句和集合:
colors = {'red', 'green', 'blue'}

# 使用内置函数 len() 判断集合大小
if len(colors) > 0:
    print("集合不为空")
else:
    print("集合为空")

# 使用 in 关键字判断元素是否存在于集合中
if 'red' in colors:
    print("集合中包含红色")

set1 = {1, 2, 3, 4, 5}
set2 = {4, 5, 6, 7, 8}

# 使用内置方法 intersection() 判断两个集合的交集
if set1.intersection(set2):
    print("集合有交集")

# 使用内置方法 isdisjoint() 判断两个集合是否没有交集
if set1.isdisjoint(set2):
    print("集合没有交集")

# 使用内置方法 pop() 移除集合中的一个元素
if set1:
    set1.pop()
    print(set1)
  1. 使用判断语句和字典:
person = {'name': 'Alice', 'age': 25, 'country': 'USA'}

# 使用内置函数 len() 判断字典大小(键值对数)
if len(person) > 0:
    print("字典不为空")
else:
    print("字典为空")

# 使用 in 关键字判断键是否存在于字典中
if 'age' in person:
    print("字典中存在 'age' 键")

# 使用内置方法 values() 判断值是否存在于字典中
if 25 in person.values():
    print("字典中存在值为 25 的键值对")

# 使用内置方法 clear() 清空字典
if person:
    person.clear()
    print(person)

这些示例代码展示了如何使用判断语句结合列表、元组、集合和字典的内置函数和方法进行条件判断和操作。根据具体的需求和条件,你可以使用适当的内置函数和方法来处理和判断数据。