簡體   English   中英

如何檢查類是否已在 Python 中實例化?

[英]How can I check if a class has been instantiated in Python ?

在我的一個類中,我正在打印尚未初始化的另一個類的數據。我只想在類初始化后打印該數據。有沒有辦法檢查類是否已實例化?

如果傳遞未聲明的類,則返回 true 和實例化時返回 false 的兩個函數:

import inspect
inspect.isclass(myclass)

isinstance(myclass, type)

一般來說,如果它不是一個類型(即未聲明的類),它就是一個實例化的類型。

只需在要創建的類中添加一個變量,如下所示:

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

希望這會有所幫助。 :)

例如,您可以在構造函數中添加實例計數器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM