首页 > 解决方案 > 是否可以在其内部提及一个类?

问题描述

我创建的是User在此类的构造函数中调用的类,我想将该类添加到字典中。代码:

users = {}


class User:
    def __init__(self, id_):
        self.id_ = id_
        
        # What I want to do:
        users[id_] = THE_CLASS_DEFINED

我试图创建一个单独的函数add_user,该函数定义了类并将类添加到users. 哪个工作得很好,但是如果你能定义类并将它添加到类中的字典中,如果你知道我的意思,那就太好了。

如果这是可能的,请让我知道,任何帮助表示赞赏。谢谢!

标签: pythonclassdictionaryobject

解决方案


如果我理解您的问题,您可以将值另存self为字典中的值

class User:
    def __init__(self, id_):
        self.id_ = id_
        users[id_] = self

然后例如

>>> a = User(5)
>>> b = User(9)
>>> print(users)

{5: <__main__.User object at 0x000001FC68D4F780>,
 9: <__main__.User object at 0x000001FC68E7FCC0>}

推荐阅读