クラスの変数があるモジュール|階層関係パイソンは、パッケージモジュールであります
次のパッケージが持っている__init__
パッケージを呼び出すために、パッケージ形態は、フォルダのある
フォームモジュールの.pyファイルである
モジュールに導入されたとき時にモジュール内のコードが実行されます
モジュールの導入
インポートXX
モジュールパッケージに導入
インポートpackname.modulename
モジュール変数に導入された
モジュール名がインポートから
モジュールの変数複数に導入された
モジュール名は、Bをインポートから
ケースラップ場合の
モジュール名からインポートを\
B(推奨されません)
モジュール名からのインポート(A、
B、...)(推奨括弧)
#导入t包下的所有模块
from t import *
#导入t包下c4模块下的所有变量
from t.c4 import *
上の __init__
彼らは通常のinit初期化中にいくつかのパッケージやモジュールを行います
パッケージがされたときに__init__
定義された__all__
*モジュールのリスト外のパッケージ・モジュールの導入から導入されることはありませんときに
package t
__all__ = ['c4']
from t import *
print(c4.a)
print(c5.a)
d:\PythonStudy\seven>python c2.py
1
Traceback (most recent call last):
File "c2.py", line 4, in <module>
print(c5.a)
NameError: name 'c5' is not defined
上の__all__
場合、モジュール定義
__all__ = ['a','c']
a = 1
b = 2
c = 3
その後、別のモジュール*方法を導入する際に、リスト以外の変数を導入していません
from t.c4 import *
print(b)
d:\PythonStudy\seven>python c2.py
aaaaaaa
Traceback (most recent call last):
File "c2.py", line 2, in <module>
print(b)
NameError: name 'b' is not defined