ホームページ > バックエンド開発 > Python チュートリアル > 一番上でインポートするかどうか: 早期インポートは遅延インポートより効率的ですか?

一番上でインポートするかどうか: 早期インポートは遅延インポートより効率的ですか?

Susan Sarandon
リリース: 2024-12-08 06:35:13
オリジナル
406 人が閲覧しました

To Import or Not to Import at the Top: Is Early Importing More Efficient Than Deferred Importing?

インポート ステートメント: 上部または下部?

PEP 8 では、インポート ステートメントがモジュールの先頭に存在することが規定されているため、未使用のクラスまたは早い段階で機能します。

class SomeClass(object):

    def not_often_called(self):
        from datetime import datetime
        self.datetime = datetime.now()
ログイン後にコピー

from datetime import datetime

class SomeClass(object):

    def not_often_called(self):
        self.datetime = datetime.now()
ログイン後にコピー

遅延インポートは事前インポートよりも効率的ですか?

モジュールのインポートは迅速ですが、コストがかかります。インポートをモジュールの先頭に配置することで、この些細な費用が一度支払われます。ただし、インポートを関数内に限定すると、各関数呼び出しの実行時間が長くなります。

したがって、効率を最適化するために、インポートを最前線に置いてください。プロファイリングによってパフォーマンスのボトルネックが明らかになった場合にのみ、遅延インポートを検討してください。

効率性を超えて、遅延インポートを正当化する追加の理由には次のものが含まれます。

  • オプションのライブラリ サポート: オプションのライブラリが使用されている場合のコード破損を防止します。
  • プラグイン初期化: プラグイン初期化ファイル内のインポートにより、使用せずにモジュールをロードできます。 bzrlib の遅延読み込みメカニズムを利用した Bazaar プラグインの例があります。

以上が一番上でインポートするかどうか: 早期インポートは遅延インポートより効率的ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート