class object_restrict(object):
_count = 0
def __new__(cls):
if cls._count > 5:
raise TypeError("Too many keys created")
cls._count += 1
print "object created"
def __init__(self):
pass
k = object_restrict()
k1 = object_restrict()
k2 = object_restrict()
k3 = object_restrict()
k4 = object_restrict()
k5 = object_restrict()
看来我对如何限制Python中某个类的对象数量有一些疑问。我被要求编写一个程序,在该程序中,我应该把我们只能创建一个类的5个实例的条件,如果我们尝试创建超过5个,它应该引发一个异常。限制在Python中创建对象的程序
正如我们在Python中所知道的,__new__
是在需要创建实例时调用的方法。我试图编写一些代码,但它不起作用。
当我运行这个代码时,它全部运行了6次。请有人在这里指导我吗?我也试着检查Google,但没有得到任何正确的代码。
安置自己的代码作为代码,而不是为图片。 –
尝试创建第7个对象。 –
我试图发布代码,但它给了我错误,所以再次张贴为图像 – Anendra