Python列表推導(dǎo)式(List Comprehensions)是一種簡潔、高效的創(chuàng)建列表的方法。它允許你使用一行代碼生成一個(gè)新的列表,而不需要使用循環(huán)或其他復(fù)雜的方法。列表推導(dǎo)式的基本語法如下:
[expression for item in iterable if condition]
expression
:用于計(jì)算新列表中的每個(gè)元素的表達(dá)式。item
:表示從iterable
中取出的每個(gè)元素。iterable
:一個(gè)可迭代對象(如列表、元組、集合或字典的鍵)。condition
:(可選)一個(gè)過濾條件,只有滿足條件的元素才會(huì)被包含在新列表中。以下是一些使用列表推導(dǎo)式的示例:
squares = [x**2 for x in range(10)]
print(squares) # 輸出:[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
words = ['Apple', 'banana', 'Orange', 'Grape', 'Avocado']
uppercase_words = [word for word in words if word[0].isupper()]
print(uppercase_words) # 輸出:['Apple', 'Orange', 'Grape', 'Avocado']
my_dict = {'a': 1, 'b': 2, 'c': 3, 'd': 4}
keys_list = [key for key in my_dict]
print(keys_list) # 輸出:['a', 'b', 'c', 'd']
list1 = [1, 2, 3, 4]
list2 = [5, 6, 7, 8]
sum_list = [x + y for x in list1 for y in list2]
print(sum_list) # 輸出:[6, 7, 8, 9, 8, 9, 10, 11, 10, 11, 12, 13, 14]
注意:雖然列表推導(dǎo)式在某些情況下非常有用,但過度使用可能會(huì)導(dǎo)致代碼難以閱讀和理解。在使用列表推導(dǎo)式時(shí),請確保它確實(shí)使代碼更簡潔且易于維護(hù)。