首页 > 解决方案 > Python内部类变量,命名空间

问题描述

class myouterclass(object):
                    def __init__(self,ID):
                              self.myouterclassID=myouterclassID
                              self.myinnerclass=self.MYINNERCLASS()
                    class MYINNERCLASS:
                              def __init__(self):
                                      self.myinnerclassID=myinnerclassID

我正在尝试创建一个内部类并创建一些变量,包括一个 ID。为简单起见,我还想使用 ID 来定义我的外部类的不同实例。

我对自己做错了什么缺乏了解。

我想要完成的是使用同名变量“ID”来定义外部类的不同实例的标识,并使用同名变量“ID”来跟踪内部类的不同实例对象“myinnerclass”。我计划创建多个内部类实例,我需要有不同的 ID 来跟踪它们

谢谢

标签: pythonclassinner-classes

解决方案


也许你想要那个?

class myouterclass(object):
    def __init__(self, the_id):
        self.myouterclassID = the_id
        self.myinnerclass = self.MYINNERCLASS(the_id)

    class MYINNERCLASS:
        def __init__(self, inner_id):
            self.myinnerclassID = inner_id
    def __init__(self, inner_id):
        self.myinnerclassID = inner_id

推荐阅读