我想知道
Python是否有办法避免__init__中的其他函数并直接进入__del__.对于例如
class API:
Array = {"status" : False, "result" : "Unidentified API Error"}
def __init__(self, URL):
self.isBanned()
print "This should be ignored."
def isBanned(self):
if True:
goTo__del__()
def __del__(self):
print "Destructed"
API = API("http://google.com/");
最佳答案 是.这就是例外情况.
class BannedSite(Exception):
pass
class API:
Array = {"status" : False, "result" : "Unidentified API Error"}
def __init__(self, URL):
if self.isBanned(URL):
raise BannedSite("Site '%s' is banned" % URL)
print "This should be ignored."
def isBanned(self, URL):
return True
在__init__方法中引发异常,因此永远不会完成赋值,因此实例没有引用,会立即删除.