python之列表推導(dǎo)式的用法
1. 定義
用一行構(gòu)建代碼
例題
# 構(gòu)建一個1-100的列表 l1 = [i for i in range(1,101)] print(l1) # 輸出結(jié)果 [1,2,3,4,5,6,...100]
2. 兩種構(gòu)建方式
2.1 循環(huán)模式: [變量(加工后的變量) for 變量 in iterable]
例題
1. 將10以內(nèi)所有整數(shù)寫入列表
print([i for i in range(1,11)]) # 輸出結(jié)果 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
2. 將10以內(nèi)所有整數(shù)的平方寫入列表。
print([i**2 for i in range(1, 11)])
3. 100以內(nèi)所有的偶數(shù)寫入列表.
print([i for i in range(2, 101, 2)])
4. 從python1期到python100期寫入列表list
print([f'python{i}期' for i in range(1, 101)])
練習(xí)題
l1 = [i*i for i in range(1,11)] print(l1) l2 = [i for i in range(1,101) if i % 2 == 0] print(l2) l3 = [f'python{i}期' for i in range(1,101)] print(l3)
2.2 篩選模式: [變量(加工后的變量) for 變量 in iterable if 條件] 增加一個判斷
例題
# 構(gòu)建一個列表,要求元素大于4 print([i for i in range(11) if i > 4]) # 輸出結(jié)果: [5, 6, 7, 8, 9, 10]
練習(xí)題
1. 10以內(nèi)大于4的數(shù)
# print([i for i in range(11) if i > 4]) print([i for i in range(1,31) if i % 3 == 0])
2. 30以內(nèi)可以被三整除的數(shù)。
# 過濾掉長度小于3的字符串列表,并將剩下的轉(zhuǎn)換成大寫字母 l1 = ['太白金星', 'fdsaf', 'alex', 'sb', 'ab'] l2 = [i.upper() for i in l1 if len(i) > 3] print(l2)
3. 找到嵌套列表中名字含有兩個‘e'的所有名字(有難度)
names = [['Tom', 'Billy', 'Jefferson', 'Andrew', 'Wesley', 'Steven', 'Joe'], ['Alice', 'Jill', 'Ana', 'Wendy', 'Jennifer', 'Sherry', 'Eva']] # 方法一: 普通方法 l4 = [] for i in names: for j in i: if j.count('e') >= 2: l4.append(j) print(l4) # 方法二: 列表推導(dǎo)式方法 print([j for i in names for j in i if j.count('e') >= 2 ])
3. 列表推導(dǎo)式的優(yōu)缺點(diǎn)
優(yōu)點(diǎn):
簡單,快捷,裝b
缺點(diǎn):
可讀性不高,不好排錯
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python實現(xiàn)繁體轉(zhuǎn)為簡體的方法示例
這篇文章主要介紹了Python實現(xiàn)繁體轉(zhuǎn)為簡體的方法,涉及Python編碼轉(zhuǎn)換相關(guān)操作技巧,需要的朋友可以參考下2018-12-12Python中encode和encoding的區(qū)別小結(jié)
Python是一種非常流行的高級編程語言,它提供了許多內(nèi)置函數(shù)和庫來方便地處理文本數(shù)據(jù),其中,encode和encoding是處理文本編碼的重要概念,本文就來介紹一下Python中encode和encoding的區(qū)別小結(jié),感興趣的可以了解一下2023-11-11Python實現(xiàn)list反轉(zhuǎn)實例匯總
這篇文章主要介紹了Python實現(xiàn)list反轉(zhuǎn)的方法,實例總結(jié)了關(guān)于list的各種較為常見的操作技巧,需要的朋友可以參考下2014-11-11關(guān)于Python 實現(xiàn)tuple和list的轉(zhuǎn)換問題
這篇文章主要介紹了Python 實現(xiàn)tuple和list的轉(zhuǎn)換,文中介紹了list(列表)和tuple(元組)共同點(diǎn)和區(qū)別,結(jié)合實例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-05-05Python Tricks 使用 pywinrm 遠(yuǎn)程控制 Windows 主機(jī)的方法
這篇文章主要介紹了Python Tricks 使用 pywinrm 遠(yuǎn)程控制 Windows 主機(jī)的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-07-07