ホームページ >バックエンド開発 >Python チュートリアル >Python でサブディレクトリからモジュールをインポートする際の ImportErrors を解決するにはどうすればよいですか?

Python でサブディレクトリからモジュールをインポートする際の ImportErrors を解決するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-14 21:42:02269ブラウズ

How to Resolve ImportErrors When Importing Modules from Subdirectories in Python?

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

Python では、サブディレクトリからモジュールをインポートすると ImportErrors が発生する可能性があります。次のシナリオを考えてみましょう:

プロジェクト構造:

  • /project/tester.py
  • /project/lib/BoxTime.py

インポート試行:

import lib.BoxTime

エラー:

Traceback (most recent call last):
  File "./tester.py", line 3, in <module>
    import lib.BoxTime
ImportError: No module named lib.BoxTime

解決策:

Python パッケージのドキュメント (セクション 6.4) によると、このエラーは、Python が Python パスで /project/lib ディレクトリを見つけられないために発生します。これを解決するには、__init__.py という名前の空のファイルを /project/lib ディレクトリに追加する必要があります。

この __init__.py ファイルは、ディレクトリをパッケージとして扱う必要があることを示すインジケーターとして機能します。追加すると、Python のパスに /project/lib が含まれるようになり、lib.BoxTime を使用して BoxTime をインポートしたり、lib.BoxTime を BT としてインポートしたりできるようになります。

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。