您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何在Python中使用“ with open”打开多个文件?

如何在Python中使用“ with open”打开多个文件?

从Python 2.7(或分别为3.1)开始,你可以编写

with open('a', 'w') as a, open('b', 'w') as b:
    do_something()

在早期版本的Python中,有时可以使用contextlib.nested()嵌套上下文管理器。但是,这对于打开多个文件无法正常工作-有关详细信息,请参见链接的文档。

在极少数情况下,你想同时打开全部数量不定的文件,可以使用contextlib.ExitStack从Python 3.3版开始的:

with ExitStack() as stack:
    files = [stack.enter_context(open(fname)) for fname in filenames]
    # Do something with "files"

大多数情况下,你拥有一组可变的文件,但是你可能想要一个一个地打开它们。

python 2022/1/1 18:24:19 有161人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶