我有一个类Foo是一个正在运行的线程,我想做的是限制Bar可以访问Foo的同时仍然可以访问Foo的内部,这可能吗?
答案 0 :(得分:2)
Python是强,动态类型语言。这意味着:
Python强烈使用所谓的"duck typing"技术,其中对象没有(并且不需要)特定类型的接口。如果一个对象支持某组方法(规范示例是一个类文件对象),那么它可以在需要类文件对象的上下文中使用。
答案 1 :(得分:0)
根据你的问题,看起来你想要一个可能像Foo一样的IFoo实例。以下代码可以做到这一点,但不推荐在Python中这样做。
class IFoo(object): pass
class Foo(IFoo): pass
f = IFoo()
Foo.__init__(f)
更好的方法是简单地使用(多)继承:
class IFoo(object):
def __init__(self, *args, **kwargs):
pass
class Foo(IFoo):
def __init__(self, *args, **kwargs):
IFoo.__init__(self, *args, **kwargs)
f = Foo()