with语句适用于哪些对象?

时间:2018-09-14 15:46:05

标签: python variables with-statement statements

我是Python的新手。我想重命名经典对象

with open('filename','r') as f
   ...

非常方便,我想对许多其他对象做同样的事情,但是它失败了,例如,

dic={'a':1}                   
with dic as x
    pass

,错误:AttributeError: __enter__

我想知道为什么它在第一个示例中有效,而在第二个示例中无效。

谢谢!

0 个答案:

没有答案