16
我有一個對象列表,我想找到第一個給定的方法爲某些輸入值返回true。這是比較容易在Python做到:如果迭代器爲空,Python迭代器中下一個元素的缺省值?
pattern = next(p for p in pattern_list if p.method(input))
然而,在我的應用程序是很常見的,沒有這樣的p
針對p.method(input)
是真實的,所以這將引發StopIteration
例外。有沒有寫一個try/catch塊來處理這種習慣用法?
特別是,它似乎將是清潔劑來處理這種情況的東西,如一個if pattern is not None
有條件的,所以我不知道是否有一種方法來擴大我的pattern
定義提供None
值時,迭代器是空的 - 或者如果有更多的Pythonic方式來處理整體問題!
哦,太好了!這正是我所希望存在的。謝謝。 –