> 文档中心 > 【python核心】包相关知识

【python核心】包相关知识

文章目录

    • 定义
    • __init__.py文件
    • __all__
    • 搜索顺序

定义

模块以文件夹的形式进行分组管理。
【python核心】包相关知识
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)