【python核心】包相关知识
文章目录
- 包
-
- 定义
- __init__.py文件
- __all__
- 搜索顺序
包
定义
将模块以文件夹的形式进行分组管理。
demo01.py
""" 包python程序结构文件夹------------项目根目录 包 模块 类 函数 语句"""#form 包.模块 import 成员# from package01.module_a import fun01# fun01()a------------fun01# from package01.package02.module_b import fun02#fun02() b------------fun02import package01.module_a as pmpm.fun02()#a------------fun01
module_a.py
def fun01(): print("a------------fun01")from package01.package02.module_b import *fun02()#b------------fun02
module_b.py
def fun02(): print("b------------fun02")
init.py文件
是包内必须存在的文件,
会在包加载时被自动调用
all
具体代码详见project文件
#语法:from 包 import *#依赖于在包的__init__.py文件中指定__all__ = [可导出的模块]from skill_system import *manger = skill_manager.SkillManager()manger.generate()
搜索顺序
具体代码详见project文件
sys.path 提供的路径
#导包原理import sys#如果不再pycharm中运行当前模块,则导包失败。# 将项目根目录加入path中,导包才会成功.sys.path.append('F:\\pycharm程序\\danei\\python核心\\day02\\project')print(sys.path)