簡體   English   中英

有沒有Python相當於Ruby的'any?' 功能?

[英]Is there a Python equivalent of Ruby's 'any?' function?

在Ruby中,你可以調用Enumerable#any嗎? 在一個可枚舉的對象上查看它的任何元素是否滿足你在塊中傳遞的謂詞。 像這樣:

lst.any?{|e| pred(e) }

在Python中,有一個any ,做類似的事情,但布爾值的列表功能。

當然,對於一個合理大小的列表,我只是這樣做:

any(map(pred,lst))

但是,如果我的列表很長,我不想首先進行整個map操作。

因此,問題:是否有一個通用的短路any在Python的功能?

是的,我知道自己寫一個是非常簡單的,但我想使用快速的內置函數(也不要重新發明任何輪子)。

any(pred(x) for x in lst)

或者

from itertools import imap
any(imap(pred, lst))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM