包 package

本文介绍了Python中的包管理概念,包括包的定义、作用、不同方式的加载方法以及__init__.py文件的重要性。此外还详细解释了包的加载路径和加载过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 包的定义

包是将模块以文件夹的组织形式进行分组管理的方法

2 包的作用:

将一系列模块进行分类管理,有利于防止名字冲突,可以在需要时加载一个或部分模块而不是全部模块

3 包的加载

   第一种

import 包名 [as 包别名]

import 包名.模块名 [as 模块别名]

import 包名.模块名.函数名  [as模块别名]

 

import 包名.子包名.模块名 [as 模块别名]

·····

导入立即初始化

mypack/

          __init__.py

          menu.py

          games/

                        __init__.py

                        contra.py

                        supermario.py

                        tanks.py

   office/

                 __init__.py

                 exec.py

                 word.py

import mypack  导入整个包是包内的__init__.py被加载

importmypack.games.tanks  逐层寻找tanks.py模块 会初始化两个__init__.py,然后再加载tanks.py模块

                

第二种

from packageName import moduleName [as  newmodule]

 

from packageName.packagesonName importmoduleName [as newmodule]

 

from packageName.moduleName  import variableName [as newVariable]

from packageName import *

和上面加载的过程一样的,包被加载 [然后模块被加载]

4 __init__.py文件

建包时必须建的文件

1)作用

在包被加载时自动调用

   1.在内部填写包的文档字符串

   2 加载此包所依赖的一些模块或其他包???

2)__all__属性
(1)作用:

用来记录那些包需要导入

当用from 包 import * 语句导入模块时,只查找__all__属性所列出的模块

__all__ 属性只在from包  import  *语句中起作用,也必须写在__init__.py中,加载子包,还有本包的模块

5 包的加载路径

同模块相同,设置方法:

1.可以设置sys.path

2.可以设置PYTHONPATH环境变量

6 包的的加载过程

   模块加载过程如下  

编译                       解释执行

   menu.py--------------->menu.pyc------------------>python3


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值