Примечание. Я знаю, что
with open('f1') as f1, open('f2') as f2:
...
синтаксис. Это другой вопрос.
Учитывая список строк file_names
, существует способ, использующий with
/as
, чтобы открыть каждое имя файла, используя одну строку. Что-то вроде:
with [open(fn) for fn in file_names] as files:
# use the list of files
который, конечно, не работает, поскольку он пытается использовать диспетчер контекстов в списке. Длина списка может быть неизвестна до времени выполнения, например sys.argv[1:]