2013-04-02 65 views
3

是否有重寫下面的代碼段的任何更好的方法(使用內建函數):Python版本all_of

def all_of(iterable, predicate): 
    for elem in iterable: 
     if not predicate(elem): 
      return False 
    return True 
+0

如果你喜歡在流上操作,你會喜歡['itertools'](http://docs.python.org/2/library/itertools.html)模塊。 –

回答

6

all是一個內置:

all(predicate(e) for e in iterable) 

 

我不認爲值得這樣定義:

def all_of(iterable, predicate): 
    return all(predicate(e) for e in iterable) 
+0

這麼容易,應該猜到了。謝謝! – truongnam1996