大規模なプロジェクトを作成する場合、何らかのカプセル化を実行することは避けられません.一般的に、関数のカプセル化とクラスのカプセル化を実行できますが、カプセル化モジュールが多すぎる場合は、ユーティリティ ライブラリをカプセル化する方が便利です.
- 最初にフォルダーを作成します。名前は自分で選択できます。それを使用してライブラリをカプセル化し、自分で作成したパッケージ モジュールの py ファイルをこのフォルダーに配置します。ディレクトリ構造は次のとおりです。
- しかし、Python システムがこれがパッケージであることを認識するためには、そのような py ファイルをフォルダーに作成する必要があります — __init__.py ファイルであり、各インポート パッケージ名は __init__.py ファイルを呼び出すことと同じです。それを実行するのはかなりです。
エラーが発生しやすい別のインポートフォームについて話しましょう
たとえば、my_module は作成したフォルダー パッケージ、text1 はパッケージ化された py ファイル モジュール、hello は text1.py ファイル内の関数です。以下の方法でメソッドをモジュールにインポートしようとすると、エラーが発生します
import my_module
my_module.test1.hello()
#AttributeError: module 'my_module' has no attribute 'test1'
解決策: パッケージ内のすべてのモジュールを __init__.py ファイルにインポートします。
from temp import text1
from temp import text2
このように、以前のように呼び出しても問題ありません。
import my_module
my_module.test1.hello()
成功〜