Вы также можете сделать:
from contextlib import nested
with nested(open(spam), open(eggs)) as (f_spam, f_eggs):
# do something
В Python 2.7 и 3.1+ вам не нужна функция nested
, потому что with
поддерживает следующий синтаксис:
with open(spam) as f_spam, open(eggs) as f_eggs:
# do something