2017-08-16 31 views
0

私のクラスの1つでは、まだ初期化されていない別のクラスのデータを印刷しています。クラスが初期化された後にそのデータを印刷したいだけです。クラスがインスタンス化されているかどうかを確認する方法はありますか?クラスがPythonでインスタンス化されているかどうかを確認する方法はありますか?

+0

「isinstance」を使用できませんか? –

+0

if isinstance(instance、MyObject):...のようなもの? – wencakisa

+0

私はそのクラスのオブジェクトを作成していません。私はそのクラスを使ってデータを処理しています。私のメインプログラムでは、そのデータを印刷したいと思います。しかし、そのクラスはプログラムの最初の実行後にのみ初期化されます。初期化するには少なくとも1回の実行が必要です。それが私のコードが失敗するところです。もし愚かであれば私を許してください。私はpython3の初心者です。 –

答えて

0

たとえば、コンストラクタにインスタンスのカウンタを追加できます。

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 

は、この情報がお役に立てば幸いです。 :)

+0

お手伝いいただきありがとうございますが、残念ながら、これは動作しません。 –

+0

エラーは何ですか? –

+0

spider = HeadlessSpider(CONFIG、HOMEPAGE、DOMAIN_NAME) ファイル "/Users/mayank/web-scrape-poc/spiders/headless_spider.py"、25行目、__init__ self.crawl_page( '最初のスパイダー'、(スパイダー。 ファイル "/Users/mayank/web-scrape-poc/spiders/headless_spider.py"、crawl_page内の33行目 super().crawl_page(thread_name、page_url) ファイル "/ Users/mayank/web-scrape-poc/spiders.py "、行63、クロール_ページ内 '|壊れたイメージ: '、ImageChecker.count(ImageChecker.instantiate else 0) NameError:名前' ImageChecker 'が定義されていません –

関連する問題