pythonのリスト操作2

昨日書き忘れた。

lst = [1, 2, 3, 4]

for i in lst:
    if i % 2 == 0:
        # ...

みたいなのを

lst = [1, 2, 3, 4]

for i in filter(lambda x: x % 2 == 0, lst):
    # ...

と書くべきかは、どうなんだろう。
おすすめなコーディングスタイルとかわからないし、1冊くらいまともな本買ってみようかな。

(追記)
pythonのライブラリ眺めてたら、itertools.ifilterなるものがあるらしいので、それを使えばいいっぽい。