class something(object):
def __init__(self):
pass
def method1(self):
pass
def method2(self):
pass
def method3(self):
pass
def disable_method12(self):
我想编写一个方法“disable_method12”来禁用我的类中的method1和method2但不会禁用method3,我该怎么做?我应该写
def disable_method12(self):
method1(self) = False
method2(self) = False
答案 0 :(得分:2)
你可以删除这样的方法:
def disable_method12(self):
del something.method1
del something.method2
或者更喜欢这样(感谢@volcano),这样你就可以重命名你的课程并且它仍然有用
def disable_method12(self):
del self.__class__.method1
del self.__class__.method2
为method2
电话测试:
s = something()
s.method2() # first time it works
s.disable_method12()
s.method2()
我到了最后一行:
AttributeError: 'something' object has no attribute 'method2'