如何检查某个类是否已在Python中实例化?

时间:2017-08-16 09:43:07

标签: python-3.x

在我的一个类中,我从另一个尚未初始化的类打印数据。我只想在类初始化后打印该数据。有没有办法检查类是否已经实例化? / p>

3 个答案:

答案 0 :(得分:1)

两个函数,如果您传递未声明的类,则返回true,如果实例化则返回false:

import inspect
inspect.isclass(myclass)

isinstance(myclass, type)

通常,如果它不是类型(即未声明的类),则它是实例化的类型。

答案 1 :(得分:0)

例如,您可以在构造函数中添加实例计数器。

答案 2 :(得分:0)

只需将一个变量添加到要创建的类中,如下所示:

class tobeinitiated():
    initiated=False
    def __init__(self):
        global initiated
        tobeinitiated.initiated = True

然后,您需要这些信息:

global initiated #(if in class)
if tobeinitiated.initiated:
    #do the stuff you need to do

希望这会有所帮助。 :)