Python3入門:使用列表推導式生成自定義列表結構
在Python編程中,列表是最常見的數(shù)據(jù)類型之一。使用列表推導式可以快速方便地生成需要的結構的列表。本文將介紹Python3中的列表推導式的用法。1. 列表推導式的使用場合如果已經(jīng)有了一個列表,并且根
在Python編程中,列表是最常見的數(shù)據(jù)類型之一。使用列表推導式可以快速方便地生成需要的結構的列表。本文將介紹Python3中的列表推導式的用法。
1. 列表推導式的使用場合
如果已經(jīng)有了一個列表,并且根據(jù)現(xiàn)有元素和已經(jīng)確定的推導規(guī)則,可以依次推出新的列表的每一項,這時就可以使用列表推導式。例如,有一個列表list1,使用列表推導式直接從list1推得list2。
2. 列表推導式中的單個元素格式
列表推導式中的單個元素格式可以是函數(shù)作用、列表、元組、集合、字典等,靈活多樣。例如,在一個列表中觸發(fā)列表推導式,可以得到每個字符串都變大寫的新列表。
3. 舉例演示
以下代碼展示了如何使用列表推導式從一個列表中觸發(fā),并得到每個字符串都變大寫的新列表:
```
list1 ['apple', 'banana', 'cherry']
list2 [x.upper() for x in list1]
print(list2)
```
輸出結果為:
```
['APPLE', 'BANANA', 'CHERRY']
```
4. 列表推導式的嵌套
列表推導式可以嵌套,也就是說,一個列表推導式可以是外層列表推導式的單個元素定義。下面是一個嵌套的例子:
```
list1 [1, 2, 3]
list2 [(x, y) for x in list1 for y in list1 if x ! y]
print(list2)
```
輸出結果為:
```
[(1, 2), (1, 3), (2, 1), (2, 3), (3, 1), (3, 2)]
```
5. 帶有條件篩選的列表推導式
列表推導式還可以帶有條件篩選。例如,只有滿足條件的元素才會推導生成新列表元素。以下代碼演示了如何使用if語句添加條件篩選:
```
list1 [x for x in range(1000)]
list2 [x for x in list1 if x < 500]
print(list2)
```
輸出結果為:
```
[0, 1, 2, ..., 498, 499]
```
通過本文的介紹,相信讀者已經(jīng)了解了Python3中列表推導式的使用方法,并可以在自己的程序中靈活運用。