How do i use the with statement in this case?
f_spam = open(spam,'r')
f_bar = open(eggs,'r')
...
do something with these files
...
f_spam.close()
f_bar.close()
Files number could be greater than two.
How do i use the with statement in this case?
f_spam = open(spam,'r')
f_bar = open(eggs,'r')
...
do something with these files
...
f_spam.close()
f_bar.close()
Files number could be greater than two.
You can also do:
from contextlib import nested
with nested(open(spam), open(eggs)) as (f_spam, f_eggs):
# do something
In Python 2.7 and 3.1+ you don't need the nested function because with supports the following syntax:
with open(spam) as f_spam, open(eggs) as f_eggs:
# do something
with open(spam) as f_spam, open(eggs) as f_eggs:.................. See the fourth bullet point down at docs.python.org/release/3.1/whatsnew/…