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)缺點
優(yōu)點:
簡單,快捷,裝b
缺點:
可讀性不高,不好排錯
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
基于pytorch實現(xiàn)對圖片進(jìn)行數(shù)據(jù)增強(qiáng)
圖像數(shù)據(jù)增強(qiáng)是一種在訓(xùn)練機(jī)器學(xué)習(xí)和深度學(xué)習(xí)模型時常用的策略,尤其是在計算機(jī)視覺領(lǐng)域,具體而言,它通過創(chuàng)建和原始圖像稍有不同的新圖像來擴(kuò)大訓(xùn)練集,本文給大家介紹了如何基于pytorch實現(xiàn)對圖片進(jìn)行數(shù)據(jù)增強(qiáng),需要的朋友可以參考下2024-01-01
python函數(shù)默認(rèn)參數(shù)使用避坑指南
這篇文章主要為大家介紹了python函數(shù)默認(rèn)參數(shù)使用的踩雷避坑詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07
詳解BeautifulSoup獲取特定標(biāo)簽下內(nèi)容的方法
這篇文章主要介紹了詳解BeautifulSoup獲取特定標(biāo)簽下內(nèi)容的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
Python爬蟲的兩套解析方法和四種爬蟲實現(xiàn)過程
本文想針對某一網(wǎng)頁對 python 基礎(chǔ)爬蟲的兩大解析庫( BeautifulSoup 和 lxml )和幾種信息提取實現(xiàn)方法進(jìn)行分析,及同一網(wǎng)頁爬蟲的四種實現(xiàn)方式,需要的朋友參考下吧2018-07-07
在ubuntu16.04中將python3設(shè)置為默認(rèn)的命令寫法
這篇文章主要介紹了在ubuntu16.04中將python3設(shè)置為默認(rèn)python的方法,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧2018-10-10
python中csv文件數(shù)據(jù)顏色設(shè)置方式
這篇文章主要介紹了python中csv文件數(shù)據(jù)顏色設(shè)置方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-02-02

