Python学习之5.2__init__.py的用法

Python学习

5.2 __init __.py的用法

当一个包被导入的时候,__init __.py文件首先被执行,而且是被Python自动地去执行。包的这种机制非常有用,在一些真实的项目里,我们通常会在__init __.py文件里去做一些包和模块的初始化工作,这是它的一个应用场景。
无论导入包还是导入包下面模块某一个变量,Python都会自动地帮我们运行__init __.py文件。

作用一:
__init __.py文件里的__all __变量可以指定导入哪个模块的变量,一经指定,用“from 模块 import * ”时,就只能导入指定模块的变量,如下:
在这里插入图片描述
这是整个文件结构。
在这里插入图片描述
__init __.py文件里的__all __变量指定导入c7模块的变量。
在这里插入图片描述
在c1文件中通过“from 模块 import * ”试图导入包t下的所有模块,并且打印c7中的变量a,c8中的变量e,但是运行结果如下:
在这里插入图片描述
只打印出了c7下的模块,这就是__init __.py文件中的__all __变量起作用了。
作用二:
可以利用__init __.py文件来进行批量导入。如果多个模块会用到多个系统库,那么在每一个模块中每次都要写好多导入系统库的代码,必定会麻烦。我们可以把这些导入的系统库只写到__init __.py文件中,当某个文件要使用这些系统库时,我们只需要导入__init __.py文件所在的那个包即可,如下:
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值