我知道我可以打开的东西,如多个文件,打开多个(数目不详),同时,确保他们正确关闭
with open('a', 'rb') as a, open('b', 'rb') as b:
但我有一个情况我有一个列表的文件打开,并且想知道当文件数量未知时,首选方法的做法是什么。喜欢的东西,
with [ open(f, 'rb') for f in files ] as fs:
(但失败,因为列表中的AttributeError
没有实现__exit__
)
我不使用类似介意,
try:
fs = [ open(f, 'rb') for f in files ]
....
finally:
for f in fs:
f.close()
,但我不知道是什么如果某些文件在试图打开它们时抛出,就会发生。在finally
区块中,是否会正确定义fs
以及设法打开的文件?
你们会访问这些文件并行,还是顺序? –
@EthanFurman平行。 – tjm