ホームページ >バックエンド開発 >Python チュートリアル >Python で相対インポートを実行し、「非パッケージで相対インポートが試行されました」エラーを回避するにはどうすればよいですか?

Python で相対インポートを実行し、「非パッケージで相対インポートが試行されました」エラーを回避するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-27 12:58:12966ブラウズ

How Do I Perform Relative Imports in Python and Avoid the

Python で相対インポートを行うにはどうすればよいですか?

ディレクトリ構造内の異なるサブパッケージからモジュールをインポートしようとすると、「非-パッケージ」エラー。この問題は、モジュールをメイン モジュールとして実行することで発生します。これにより、モジュールが最上位にあるかのように相対インポートが処理されます。

この問題を解決するには、モジュールがメイン モジュールとして実行されていないことを確認してください。 Python 2.6 以降では、package 属性を使用して、パッケージ階層内のモジュールの位置を決定し、それに応じて相対インポートを解決できます。この変更の詳細については、PEP 366 を参照してください。

package 属性は、sys.path 操作ハックよりもクリーンなソリューションを提供します。 PEP 366 で説明されている動作と同様に、メイン モジュールを基準にしてモジュールをインポートできます。

以上がPython で相対インポートを実行し、「非パッケージで相対インポートが試行されました」エラーを回避するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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