同时打开列表中的所有文件
Open all files from list simultaneously
我需要修改(变量但很小)数量的文件,我想知道是否有 Python 语法可以让我打开它们with
语句。例如。像
file_names = ("file_a", "file_b", "file_c")
with open(file_names) as files:
for file_ in files:
file_.write("Hello file!")
本例中 file_names
的长度会有所不同。
实际上,with
支持这样的语法:
with open("file_a", "r+") as fa, open("file_b", "r+") as fb, \
open("file_c", "r+") as fc:
for f in (fa, fb, fc):
f.write("Hello file!")
要在可变数量的上下文管理器上使用 with
,您至少需要 Python 3.3 和 contextlib.ExitStack
.
我需要修改(变量但很小)数量的文件,我想知道是否有 Python 语法可以让我打开它们with
语句。例如。像
file_names = ("file_a", "file_b", "file_c")
with open(file_names) as files:
for file_ in files:
file_.write("Hello file!")
本例中 file_names
的长度会有所不同。
实际上,with
支持这样的语法:
with open("file_a", "r+") as fa, open("file_b", "r+") as fb, \
open("file_c", "r+") as fc:
for f in (fa, fb, fc):
f.write("Hello file!")
要在可变数量的上下文管理器上使用 with
,您至少需要 Python 3.3 和 contextlib.ExitStack
.