ホームページ > バックエンド開発 > Python チュートリアル > 完全なファイル パスを使用して Python モジュールを動的にインポートするにはどうすればよいですか?

完全なファイル パスを使用して Python モジュールを動的にインポートするにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-30 17:31:13
オリジナル
643 人が閲覧しました

How Can I Dynamically Import Python Modules Using Their Full File Paths?

フル パスを指定したモジュールの動的インポート

Python モジュールは、フル ファイル パスを指定することでスクリプトにインポートできます。この方法を使用すると、事前に知られていないモジュールや、標準ライブラリの外部にあるモジュールをロードできます。

Importlib を使用したモジュールのロード

Python 3.5 以降では、importlib.util を使用します。 module:

import importlib.util
import sys

spec = importlib.util.spec_from_file_location("module.name", "/path/to/file.py")
foo = importlib.util.module_from_spec(spec)
sys.modules["module.name"] = foo
spec.loader.exec_module(foo)
foo.MyClass()
ログイン後にコピー

SourceFileLoader を使用したモジュールのロード (Python) 3.3-3.4)

Python 3.3 および 3.4 では、importlib.machinery の SourceFileLoader を使用します。

from importlib.machinery import SourceFileLoader

foo = SourceFileLoader("module.name", "/path/to/file.py").load_module()
foo.MyClass()
ログイン後にコピー

imp によるモジュールのロード (Python 2)

Python 2 の場合、インプを使うmodule:

import imp

foo = imp.load_source('module.name', '/path/to/file.py')
foo.MyClass()
ログイン後にコピー

追加メモ

  • 提供されたコードは、モジュールに MyClass という名前のクラスが含まれていることを前提としています。
  • コンパイルされた Python ファイルをインポートするための同様の関数があり、 DLL。
  • 詳細については、Python バグ レポートを参照してください。 http://bugs.python.org/issue21436.

以上が完全なファイル パスを使用して Python モジュールを動的にインポートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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