Python3之包浅谈

日期:2020年2月19日
作者:Commas
注释:学习就是为了忘记,接上一章《Python3之模块浅谈》,现在讲一下Python包;
如果您想了解更多有关Python的知识,那么请点《我的Python浅谈系列目录》


就是一个特殊的目录,包的命名规则和变量名是一致的(小写字母下划线_,若想了解更多,可阅读我的另一篇博客《Python3之命名规范浅谈》)。在这个目录中,包含两种文件,如下:

  • 一个__init__.py文件;
  • 多个模块文件;

其中__init__.py文件是用来管理包中的模块,该文件指定了对外界提供的模块列表,语法如下:

# 从“当前目录”导入模块,即指定该包对外界提供的模块
from . import 模块名1
from . import 模块名2
from . import 模块名3

当然,也可以直接指定某个模块的工具(全局变量、类或函数),语法如下:

# 从“当前目录”的指定模块导出指定的工具
from .模块名1 import 全局变量1
from .模块名1 import 函数名1
from .模块名1 import 类名1
# 重命名工具名,避免冲突覆盖原来的类
from .模块名2 import 类名1 as21

可以自行参考json模块的源码,我们所说的json模块,实际上是json包,就是在__init__.py中指定了开放的工具(类)和模块,以及定义了我们常用的一些方法,部分源码如下:

__version__ = '2.0.9'
__all__ = [
    'dump', 'dumps', 'load', 'loads',
    'JSONDecoder', 'JSONDecodeError', 'JSONEncoder',
]

__author__ = 'Bob Ippolito <bob@redivi.com>'

from .decoder import JSONDecoder, JSONDecodeError
from .encoder import JSONEncoder
import codecs

版权声明:本文为博主原创文章,如需转载,请给出:
原文链接:https://blog.csdn.net/qq_35844043/article/details/104379933

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值