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

特定のファイル パスから Python モジュールを動的にインポートするにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-20 11:37:09
オリジナル
943 人が閲覧しました

How Can I Dynamically Import a Python Module from a Specific File Path?

指定されたパスからモジュールを動的にインポートする

Python では、通常、モジュールのインポートは名前を指定することで実現されます。ただし、ファイルシステム内の場所に関係なく、特定のファイルからモジュールをインポートする必要がある場合はどうすればよいでしょうか?

解決策:

に基づいてモジュールを動的にインポートするにはどうすればよいですか?そのフルパスを使用すると、次のいずれかの手法を利用できます:

Python 3.5 (推奨):

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()  # Access a class within the module
ログイン後にコピー

Python 3.3 および 3.4:

from importlib.machinery import SourceFileLoader

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

Python 2:

import imp

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

これらのメソッドは、コンパイルされた Python ファイルをインポートするための便利なオプションを提供していることに注意してください。 DLL も同様です。

追加の注意:

このアプローチは、動的に生成されたモジュール、またはどのモジュールにもインストールされていないモジュールを操作する場合に特に便利であることに注意してください。標準の Python パス。

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

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