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

  • 回答 (2)
  • 关注 (0)
  • 查看 (348)

我想同时更改几个文件,如果我可以写入所有这些文件。我想知道如果我能以某种方式将多个打开的调用与with声明结合起来:

try:
  with open('a', 'w') as a and open('b', 'w') as b:
    do_something()
except IOError as e:
  print 'Operation failed: %s' % e.strerro

如果这是不可能的,这个问题有没有比较好的解决方案?是什么样的?

你想要的ccc你想要的ccc提问于
HKC

红客学院 · 创始人 (已认证)

道可道 非常道 名可名 非常名回答于

只需替换and,,你就完成了:

try:
    with open('a', 'w') as a, open('b', 'w') as b:
        do_something()
except IOError as e:
    print 'Operation failed: %s' % e.strerror
Dust资深服务器虚拟化工程师。回答于

从Python 2.7(或3.1分别),你可以写

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

在Python的早期版本中,有时可以使用 contextlib.nested()嵌套上下文管理器。这不会按预期方式打开多个文件 - 请参阅链接的文档的详细信息。

扫码关注云+社区

领取腾讯云代金券