サブディレクトリからのファイルのインポート
サブディレクトリからのファイルのインポートは、Python コードを編成する際の一般的な課題となることがあります。サブディレクトリ内にあるファイルにアクセスしようとすると、インポート エラーが発生する場合があります。この記事では、この問題に対処し、解決策を示します。
シナリオ
tester.py というファイルが /project という名前のディレクトリ内にあるプロジェクト構造を考えてみましょう。 /project ディレクトリ内には lib という名前のサブディレクトリがあり、このサブディレクトリには BoxTime.py というファイルが含まれています。目的は、tester.py から BoxTime をインポートすることです。
失敗した試行
次のコードを使用して BoxTime をインポートしようとすると、エラーが発生します:
import lib.BoxTime
これは以下を返しますトレースバック:
Traceback (most recent call last): File "./tester.py", line 3, in <module> import lib.BoxTime ImportError: No module named lib.BoxTime
解決策
解決策は、lib サブディレクトリ内に __init__.py という名前の特別なファイルを作成することです。このファイルは、Python が lib をパッケージとして認識し、サブディレクトリ内からファイルをインポートできるようにするために重要です。 __init__.py ファイルを配置したら、次の構文を使用して lib サブディレクトリ内のファイルをインポートできます:
import lib.BoxTime
または、BoxTime を lib.BoxTime として参照するのを避けるために、次の構文を使用できます。
import lib.BoxTime as BT ... BT.bt_function()
サブディレクトリ内に __init__.py ファイルを作成することで、Pythonこれをパッケージとして認識し、サブディレクトリからのモジュールのインポートを容易にします。
以上がPython でサブディレクトリからファイルをインポートするには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。