Pythonのお勉強 Part4
■ このスレッドは過去ログ倉庫に格納されています
0574デフォルトの名無しさん
NGNGdef foo(func, list):
for item in list:
result = func(item)
if result:
return result
return False
みたいな関数を同じ計算量で内包表記で書くことはできますか?
def foo(func, list):
return [func(item) for item in list if func(item)]
というのを考えたのですが、
1. list の要素すべてにアクセスしてしまう
2. func を 2 回呼びだしてしまう
という点で元の関数と違ってしまいます。
■ このスレッドは過去ログ倉庫に格納されています