您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關(guān)python怎么使用列表推導(dǎo)式的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
列表推導(dǎo)式
如果你還不會使用列表推導(dǎo)式,那么快學起來吧。正如本文作者所言,「當我第一次學到這種方式時,我的整個世界都變了?!沽斜硗茖?dǎo)式真的非常強大,它不僅在速度上比一般的方法快,同時直觀性、可讀性都非常強。如果你希望迭代列表做一些運算,那么快使用它吧。
我們先定義一個簡單的函數(shù),它會算變量的平方并加 5:
>>> def stupid_func(x): >>> return x**2 + 5
如果我們希望將該函數(shù)應(yīng)用到列表中的奇數(shù)項,那么不采用列表推導(dǎo)式的情況下,我們一般會寫成以下形式:
>>> my_list = [1, 2, 3, 4, 5] >>> new_list = [] >>> for x in my_list: >>> if x % 2 != 0: >>> new_list.append(stupid_func(x)) >>> print(new_list) [6, 14, 30]
但是現(xiàn)在我們有了列表推導(dǎo)式,那么上面代碼可以等價修改為:
>>> my_list = [1, 2, 3, 4, 5] >>> print([stupid_func(x) for x in my_list if x % 2 != 0]) [6, 14, 30]
列表推導(dǎo)式的一般語法可以表示為 [ expression for item in list ],如果你希望加上一些布爾型條件語句,那么上面的語法可以修改為 [ expression for item in list if conditional ],它的結(jié)構(gòu)其實和下面是等價的。
>>> for item in list: >>> if conditional: >>> expression
上面的列表推導(dǎo)式可以進一步簡化,即不需要定義一個新函數(shù)。
>>> print([x ** 2 + 5 for x in my_list if x % 2 != 0]) [6, 14, 30]
感謝各位的閱讀!關(guān)于“python怎么使用列表推導(dǎo)式”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。