【发布时间】:2013-05-14 01:36:18
【问题描述】:
{class foo(object):
def __enter__ (self):
print("Enter")
def __exit__(self,type,value,traceback):
print("Exit")
def method(self):
print("Method")
with foo() as instant:
instant.method()}
执行这个 py 文件,控制台会显示这些消息:
Enter
Exit
instant.method()
AttributeError: 'NoneType' object has no attribute 'method'
找不到方法?
【问题讨论】:
-
封闭的
{}是干什么用的?另外,对于类实例,它不应该是new foo()吗? -
@karthikr:Python 构造函数作为函数调用,而不是
new。
标签: python with-statement