class
Foo
:
class Foo():
def __init__(self):
del self.foo
def foo(self):
pass
インスタンス化されたときraise
s AttributeError: Foo instance has no attribute 'foo'
. ( ) sFoo
から派生。使用しても役に立ちません。object
class Foo(object)
raise
AttributeError: 'Foo' object attribute 'foo' is read-only
delattr(self, "foo")
次の操作を行っても、Foo
のインスタンスから属性が削除されることはありません。
class Foo():
def __init__(self):
self.foo = None
del self.foo
def foo(self):
pass
>>> Foo().foo
<bound method Foo.foo of <__main__.Foo instance at 0x00000000042EA248>>
目的:
私は基本的に、class
いくつかの条件が満たされている場合、特定の属性のインスタンスから特定の属性を完全に削除/またはアクセスできないようにしたいと考えています。
助言がありますか?