如果文件夹下没有 __init__.py 则该目录名被认为是模块。
导入包时都会执行一次包下的 __init__.py,且只执行一次。init.py 中可以写代码,可以 import 东东,或 sys.path.append。
from package import * 只会将包目录下的 __init__.py 里的 all 里的成员暴露出来。而 import package,有了前缀后,则能访问的成员都能访问,不受 all 影响。
sys.path.append('./package') 添加搜索模块的路径。搜索模块 A.b 时会在所有的已知路径后面加上 A/b。比如当前搜索路径是:/Users/MoonBall/PycharmProjects/,则搜索模块路径为:/Users/MoonBall/PycharmProjects/A/b。












网友评论