Python のサブディレクトリからモジュールをインポートするには?

Susan Sarandon
リリース: 2024-11-23 15:55:19
オリジナル
716 人が閲覧しました

How to Import Modules from Subdirectories in Python?

サブディレクトリからのファイルのインポート

外部モジュールのインポートは、Python 開発では一般的な方法です。ただし、モジュールがサブディレクトリに存在する場合、モジュールをインポートするには特定のアプローチが必要です。

問題の説明

/ に tester.py という名前のファイルがあるとします。プロジェクトディレクトリ。このディレクトリには、BoxTime.py という名前のファイルを格納する lib というサブディレクトリが含まれています。あなたの目標は、BoxTime を tester.py にインポートすることです。

最初の試行とエラー

次のコードを使用して BoxTime をインポートしようとしました:

import lib.BoxTime
ログイン後にコピー
ログイン後にコピー

ただし、Python が という名前のモジュールを見つけることができなかったため、ImportError が発生しました。 lib.BoxTime.

解決策: パッケージの実装

この問題を解決するには、lib ディレクトリを Python パッケージに変換する必要があります。これには、lib ディレクトリ内に __init__.py という名前の空のファイルを作成することが含まれます。

/project
    /tester.py
    /lib/__init__.py
    /lib/BoxTime.py
ログイン後にコピー

この __init__.py ファイルはパッケージ初期化子として機能し、ディレクトリが Python モジュールを含むパッケージであることを Python に通知します。

モジュールのインポート正しく

__init__.py ファイルを配置したら、次のいずれかの方法を使用して BoxTime をインポートできます:

import lib.BoxTime
ログイン後にコピー
ログイン後にコピー

または

import lib.BoxTime as BT
BT.bt_function()
ログイン後にコピー

2 番目の方法では、BoxTime を変数 BT に割り当て、短いエイリアスを使用してその関数にアクセスできるようにします。

以上がPython のサブディレクトリからモジュールをインポートするには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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