一個py文件就是一個模塊,py文件可以放到目錄結(jié)構(gòu)中锐借。
如果目錄結(jié)構(gòu)中包含__init__.py鞋诗,該目錄就構(gòu)成了一個包。
(1)導(dǎo)入模塊
Module1.py
a = 1
Folder/Module2.py
b = 2
Main.py
import Module1
import Folder.Module2
print(Module1.a)
print(Folder.Module2.b)
(2)導(dǎo)入包
Folder/__init__.py
__all__ = ["Module2"]
Folder/Module2.py
b = 2
Main.py
from Folder import *
print(Module2.b)
注:
(1)import
只能導(dǎo)入模塊关噪,不能導(dǎo)入變量。
(2)import Package.Module
會導(dǎo)致Package
乌妙,Package.Module
兩個名字都被導(dǎo)入使兔。
(3)from A import B
, 可以導(dǎo)入模塊或者變量冠胯。
from Module import variable
火诸,會導(dǎo)入一個變量variable = Module.variable
锦针,但是Module
這個名字沒有導(dǎo)入荠察。
from Package import Module
,會導(dǎo)入一個變量Module = Package.Module
奈搜, 但是Package
這個名字沒有導(dǎo)入悉盆。
(4)from Package import *
,
Package
導(dǎo)入的Module
是受Pacakge__init__.py中__all__
變量控制的馋吗。