最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

九個(gè)Python列表生成式高頻面試題匯總

 更新時(shí)間:2022年05月24日 09:12:41   作者:趙卓不凡  
本文為大家整理了九個(gè)Python列表生成式的面試題(從簡(jiǎn)單到困難排序),可以幫助大家提高列表生成式的理解水平,感興趣的小伙伴可以學(xué)習(xí)一下

1. 引言

之前已經(jīng)有博客專門介紹了Python中的列表生成式,可能大家還不太擅長(zhǎng)。這里推薦九個(gè)Python列表生成式的面試題(從簡(jiǎn)單到困難排序),可以幫助大家提高列表生成式的理解水平。

閑話少說(shuō),我們直接開(kāi)始吧!

2. 字符串轉(zhuǎn)整數(shù)

假設(shè)我們有以下字符串列表:

lis = ["1", "2", "3", "4", "5"]

我們希望用代碼實(shí)現(xiàn)列表生成式用以將列表中的每個(gè)字符串轉(zhuǎn)化為相應(yīng)的整數(shù),這里假設(shè)每一個(gè)列表中的元素均可以轉(zhuǎn)化為整數(shù),即樣例的輸出如下:

[1, 2, 3, 4, 5]

【參考答案】

lis = ["1", "2", "3", "4", "5"]
answer = [int(i) for i in lis]
print(answer)

3. 大于10的數(shù)字

假設(shè)我們有以下整數(shù)列表:

lis = [1,5,13,4,16,7]

我們希望用代碼實(shí)現(xiàn)列表生成式用以找出上述列表中大于10的數(shù)字。即樣例的輸出如下:

[13, 16]

【參考答案】

lis = [1,5,13,4,16,7]
answer = [i for i in lis if i>10]
print(answer)

4. 大于10且整除3的數(shù)字

假設(shè)我們有以下整數(shù)列表:

lis = [1,12,13,14,15,2,3]

我們希望用代碼實(shí)現(xiàn)列表生成式用以找出上述列表中大于10且可以整除3的數(shù)字。即樣例的輸出如下:

[12, 15]

【參考答案】

lis = [1,12,13,14,15,2,3]
answer = [i for i in lis if i>10 and i%3==0]
print(answer)

5. 對(duì)列表中的偶數(shù)執(zhí)行加1操作

假設(shè)我們有以下整數(shù)列表:

lis = [1,2,4,5,7]

我們希望用代碼實(shí)現(xiàn)列表生成式用以對(duì)上述列表中的偶數(shù)執(zhí)行加1的操作。即樣例的輸出如下:

[1,3,5,5,7]

提示: 可以使用三目運(yùn)算符

【參考答案】

lis = [1,2,4,5,7]
answer = [(i+1 if i%2==0 else i) for i in lis]
print(answer)

6. 包含數(shù)字1的數(shù)字

實(shí)現(xiàn)一個(gè)列表生成式,用以求出在數(shù)字1到100之間所有包含數(shù)字1的數(shù)字。

即樣例的輸出如下:

[1,10,11,12,13,14,15,16,17,18,19,21,31,41,51,61,71,81,91,100]

【參考答案】

answer = [i for i in range(1,101) if "1" in str(i)]
print(answer)

7. 合并兩個(gè)列表

假設(shè)我們有兩個(gè)長(zhǎng)度相同的列表,分別為fruits和prices , 兩個(gè)列表中的元素分別如下:

fruits = ["apple", "orange", "pear"]
prices = [4,5,6]

我們希望用代碼實(shí)現(xiàn)列表生成式用以對(duì)上述兩個(gè)列表進(jìn)行合并,即列表中的元素為(fruit, price)形式。即樣例的輸出如下:

[("apple",4), ("orange",5), ("pear",6)]

提示: 推薦使用zip函數(shù)

【參考答案】

fruits = ["apple", "orange", "pear"]
prices = [4,5,6]
answer = [(fruit, price) for fruit, price in zip(fruits, prices)]
print(answer)

8. 根據(jù)value對(duì)字典排序

假設(shè)我們有以下字典,key為水果名稱fruits,value為相應(yīng)的單價(jià)price,如下:

d = {"apple":5, "orange":2, "pear":7, "durian":6}

我們需要實(shí)現(xiàn)列表生成式用以對(duì)上述字典按price對(duì)相應(yīng)的元素進(jìn)行排序。即樣例輸出如下:

[("orange",2), ("apple",5), ("durian",6), ("pear",7)]

提示: 推薦使用 sorted函數(shù)

【參考答案】

d = {"apple":5, "orange":2, "pear":7, "durian":6}
answer = sorted([(f,p) for f,p in d.items()], key=lambda x:x[-1])
print(answer)

9. 求兩個(gè)列表的元素組合

假設(shè)我們有以下兩個(gè)列表:

fruits = ["apple", "orange", "pear"]
recipes = ["pie", "juice"]

我們需要實(shí)現(xiàn)列表生成式用以對(duì)上述兩個(gè)列表中的元素求解組合操作。即樣例輸出如下:

[
    ("apple", "pie"), ("apple", "juice"),
    ("orange", "pie"), ("orange", "juice"),
    ("pear", "pie"), ("pear", "juice")
]

提示: 使用兩層嵌套循環(huán)

【參考答案】

fruits = ["apple", "orange", "pear"]
recipes = ["pie", "juice"]
answer = [(f,r) for f in fruits for r in recipes]
print(answer)

10. 列表中兩個(gè)元素的唯一組合,其和為3的倍數(shù)

假設(shè)我們有以下整數(shù)列表:

lis = [1,6,2,4,7]

我們希望用列表生成式來(lái)實(shí)現(xiàn)在此列表中查找任意兩個(gè)元素的唯一組合,其總和為3的倍數(shù)。即上述樣例預(yù)期輸出為:

[(1,2), (2,4), (2,7)]

【參考答案】

lis = [1,6,2,4,7]
answer = [(i,j) for i in lis for j in lis if i<j and (i+j)%3==0]
print(answer)

11. 總結(jié)

本文重點(diǎn)介紹了九個(gè)Python列表生成式的面試題,并給出了相應(yīng)的代碼實(shí)現(xiàn),可以加深大家對(duì)列表生成式的理解。

到此這篇關(guān)于九個(gè)Python列表生成式高頻面試題匯總的文章就介紹到這了,更多相關(guān)Python列表生成式內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

罗平县| 安吉县| 海宁市| 嘉定区| 社旗县| 密云县| 江油市| 交口县| 海丰县| 察哈| 顺昌县| 苏州市| 威信县| 镇江市| 盐边县| 富裕县| 乡宁县| 湘潭市| 盐亭县| 荃湾区| 黎平县| 昔阳县| 炉霍县| 夏邑县| 安陆市| 博乐市| 肃宁县| 临颍县| 东莞市| 浏阳市| 女性| 伊金霍洛旗| 华池县| 邮箱| 西吉县| 高密市| 苍山县| 攀枝花市| 杭锦旗| 华阴市| 呼玛县|