Python 中的表达式可以包含各种元素,如变量、常量、运算符、函数调用等。以下是 Python 表达式的一些分类及其详细例子:
1. 算术表达式
算术表达式涉及基本的数学运算,如加、减、乘、除等。
# 加法表达式 | |
sum = 3 + 5 # 结果为 8 | |
# 乘法表达式 | |
product = 4 * 6 # 结果为 24 | |
# 复合算术表达式 | |
result = (5 + 2) * 3 - 4 # 结果为 17 |
2. 字符串表达式
字符串表达式涉及字符串的连接、格式化等。
# 字符串连接 | |
greeting = "Hello, " + "World!" # 结果为 "Hello, World!" | |
# 使用 f-string 格式化字符串(Python 3.6+) | |
name = "Alice" | |
age = 30 | |
formatted_string = f"My name is {name} and I'm {age} years old." # 结果为 "My name is Alice and I'm 30 years old." |
3. 列表推导式(List Comprehensions)
列表推导式是创建列表的一种简洁方式。
# 创建一个包含 0 到 9 的平方的列表 | |
squares = [x**2 for x in range(10)] # 结果为 [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] | |
# 创建一个包含列表中所有偶数平方的列表 | |
even_squares = [x**2 for x in range(10) if x % 2 == 0] # 结果为 [0, 4, 16, 36, 64] |
这篇文章更为详细的解释了何为列表推导式:Python列表推导式(List Comprehensions)
4. 字典推导式(Dictionary Comprehensions)
字典推导式用于创建字典。
# 创建一个字典,其中键是 1 到 5 的整数,值是它们的平方 | |
squares_dict = {x: x**2 for x in range(1, 6)} # 结果为 {1: 1, 2: 4, 3: 9, 4: 16, 5: 25} |
5. 集合推导式(Set Comprehensions)
集合推导式用于创建集合。
# 创建一个集合,其中包含列表中所有唯一的偶数 | |
even_numbers = {x for x in range(10) if x % 2 == 0} # 结果为 {0, 2, 4, 6, 8} |
6. 生成器表达式(Generator Expressions)
生成器表达式与列表推导式类似,但返回的是一个生成器对象,用于迭代。
# 创建一个生成器,用于迭代 0 到 9 的平方 | |
squares_gen = (x**2 for x in range(10)) # 这是一个生成器对象,你可以通过迭代来访问其元素 | |
# 迭代生成器并打印结果 | |
for square in squares_gen: | |
print(square) # 依次打印 0, 1, 4, 9, ... |
7. 逻辑表达式
逻辑表达式涉及布尔值和逻辑运算符。
# 逻辑与(and)表达式 | |
is_adult = age >= 18 | |
is_qualified = has_degree and is_adult | |
# 逻辑或(or)表达式 | |
has_experience = years_of_experience > 0 or is_qualified | |
# 逻辑非(not)表达式 | |
is_not_qualified = not is_qualified |
8. 函数调用表达式
函数调用表达式涉及调用函数并传递参数。
# 定义一个函数 | |
def greet(name): | |
return f"Hello, {name}!" | |
# 调用函数并存储返回值 | |
greeting = greet("Bob") # 结果为 "Hello, Bob!" |
这些例子涵盖了 Python 中表达式的主要类型。表达式是编程中的基本构造,它们允许我们执行各种计算和操作。