溫馨提示×

Python列表推導式能做什么操作

小樊
81
2024-11-09 10:39:42
欄目: 編程語言

Python列表推導式(List Comprehensions)是一種簡潔、高效的創(chuàng)建列表的方法。它可以用一行代碼生成一個新的列表,而不需要使用循環(huán)或其他復雜的方法。列表推導式支持以下操作:

  1. 對現(xiàn)有列表進行過濾:可以根據(jù)指定的條件篩選出符合條件的元素,生成一個新的列表。
numbers = [1, 2, 3, 4, 5]
even_numbers = [num for num in numbers if num % 2 == 0]  # 篩選出偶數(shù)
print(even_numbers)  # 輸出:[2, 4]
  1. 對現(xiàn)有列表進行轉換:可以對列表中的每個元素進行某種操作,生成一個新的列表。
numbers = [1, 2, 3, 4, 5]
squared_numbers = [num * num for num in numbers]  # 計算平方值
print(squared_numbers)  # 輸出:[1, 4, 9, 16, 25]
  1. 對多個列表或可迭代對象進行合并:可以將多個列表或可迭代對象合并成一個新的列表。
list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
combined_list = [item for sublist in [list1, list2] for item in sublist]  # 合并兩個列表
print(combined_list)  # 輸出:[1, 2, 3, 'a', 'b', 'c']
  1. 對字典進行轉換:可以將字典的鍵或值提取出來,生成一個新的列表。
my_dict = {'a': 1, 'b': 2, 'c': 3}
keys_list = [key for key in my_dict]  # 提取字典的鍵
print(keys_list)  # 輸出:['a', 'b', 'c']

values_list = [value for value in my_dict.values()]  # 提取字典的值
print(values_list)  # 輸出:[1, 2, 3]
  1. 對嵌套列表進行扁平化:可以將嵌套的列表展開成一個一維列表。
nested_list = [[1, 2], [3, 4], [5, 6]]
flat_list = [item for sublist in nested_list for item in sublist]  # 展開嵌套列表
print(flat_list)  # 輸出:[1, 2, 3, 4, 5, 6]

總之,Python列表推導式是一種非常強大的工具,可以簡化代碼并提高開發(fā)效率。

0