The syntax error is coming from finding "as" in a place it's unexpected. (Additionally, if you were to drop the `as fn`, you'd get an AttributeError as tuple.__enter__ isn't defined). There's a contextlib helper that you might consider: https://docs.python.org/3/library/contextlib.html#contextlib.ExitStack Which you might use like: from contextlib import ExitStack with ExitStack() as stack: f1 = stack.enter_context(open(fname1)) f2 = stack.enter_context(open(fname2)) f3 = stack.enter_context(open(fname3)) f4 = stack.enter_context(open(fname4)) ... On Wed, Nov 13, 2019 at 1:30 PM <gabriel.kabbe@mail.de> wrote:
Hello everybody,
today I tried to open four files simultaneously by writing
with ( open(fname1) as f1, open(fname2) as f2, open(fname3) as f3, open(fname4) as f4 ): ...
However, this results in a SyntaxError which is caused by the extra brackets. Is there a reason that brackets are not allowed in this place? _______________________________________________ Python-ideas mailing list -- python-ideas@python.org To unsubscribe send an email to python-ideas-leave@python.org https://mail.python.org/mailman3/lists/python-ideas.python.org/ Message archived at https://mail.python.org/archives/list/python-ideas@python.org/message/7GRCN5... Code of Conduct: http://python.org/psf/codeofconduct/