📜  列表理解 if else - Python (1)

📅  最后修改于: 2023-12-03 15:36:52.150000             🧑  作者: Mango

列表理解 if else - Python

在Python中,列表理解是一种非常强大的技巧,用于方便快捷地创建新的列表。列表理解可以使用if else语句来过滤或转换原始列表中的元素,从而创建新的列表。

语法

Python中的列表理解if else语法如下:

new_list = [expression_if if condition else expression_else for item in list]
  • new_list:新列表的名称
  • expression_if:如果条件为True,则会将元素添加到新列表中
  • condition:需要满足的条件
  • expression_else:如果条件为False,则会将元素添加到新列表中
  • item:用于迭代的变量
  • list:原始列表名称
示例

以下是一些列表理解if else语句的示例。

过滤列表

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_numbers = [number for number in numbers if number % 2 == 0]
odd_numbers = [number for number in numbers if number % 2 != 0]

print(even_numbers) # 输出[2, 4, 6, 8, 10]
print(odd_numbers) # 输出[1, 3, 5, 7, 9]

上面的代码创建一个numbers列表,然后使用列表理解if else语句过滤出偶数和奇数。如果一个数字可以被2整除,则添加到even_numbers列表中,否则添加到odd_numbers列表中。

转换列表

names = ['Alice', 'Bob', 'Charlie', 'Dave']
lengths = [len(name) if len(name) % 2 == 0 else len(name) * 2 for name in names]

print(lengths) # 输出[10, 6, 14, 4]

上面的代码创建一个名为names的列表,然后使用列表理解if else语句将其转换为一个长度列表。如果名称的长度可以被2整除,则将其长度添加到长度列表中,否则将其长度乘以2,并将其添加到长度列表中。

结论

列表理解if else是Python中非常实用和强大的语法结构之一。使用列表理解if else,您可以轻松地过滤和转换原始列表中的元素,从而创建新的列表。无论你是做数据分析、Web开发,还是做其他的Python项目,这些技巧都可以让你更快、更有效地达到你的目标。