ホームページ > バックエンド開発 > Python チュートリアル > Python プログラムでインポートされたモジュールのリストを取得するにはどうすればよいですか?

Python プログラムでインポートされたモジュールのリストを取得するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-10-29 09:54:02
オリジナル
1039 人が閲覧しました

How can I get a list of imported modules in my Python program?

インポートされたモジュールのリストの取得

インポートされたモジュールのリストは、Python プログラムの依存関係と構造を理解するための貴重な手法です。幸いなことに、Python にはこの情報を取得する簡単な方法が用意されています。

プログラムにインポートされたすべてのモジュールを列挙するには、次のコードを利用します。

<code class="python">import sys
sys.modules.keys()</code>
ログイン後にコピー

このスニペットは sys.modules 辞書にアクセスします。これにはモジュール名を表すキーが含まれます。これらのキーを反復処理することで、インポートされたモジュールのリストを取得できます。

たとえば、次のコードがあるとします。

<code class="python">import os
import sys</code>
ログイン後にコピー

上記のコードを実行した結果は、['os' , 'sys']、インポートされたモジュール名が表示されます。

特に現在のモジュール内のインポートのリストを取得することに興味がある場合は、次のアプローチを使用できます:

<code class="python">import types
def imports():
    for name, val in globals().items():
        if isinstance(val, types.ModuleType):
            yield val.__name__</code>
ログイン後にコピー

この関数は、現在のモジュールの globals() をイントロスペクトし、types.ModuleType のインスタンスであるエントリを除外します。この近似では、インポートでエイリアスが使用されていた場合でも、元のモジュール名が返されます。

この関数には、ローカル インポートや、'from x import y' のような非モジュール インポートが含まれないことに注意してください。さらに、元のモジュール名に対応する val.__name__ を返します。代わりにエイリアスを取得するには、関数内で yield name を使用します。

以上がPython プログラムでインポートされたモジュールのリストを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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