__init__在python中的用法_python 中的__init__.py的用法与个人理解

当使用Python模块中一种常见的情况是提前写一个文件。当你需要导入的文件,将其复制到当前目录,然后导入它。这种方法是可行的,当程序体积小。如果程序相互作用比较复杂,很费力。有一个解决办法来组织多个. py文件促进统一的外部调用和内部调用:__init__。py在python中扮演一个重要的角色在包中调用。首先,它必须清楚Python执行导入的包时,Python文档中描述的操作执行。操作如下:a)创建一个新的、空的模块对象(它可能包含多个模块);b)模块对象插入c)加载模块的代码(如果有必要的话,首先必须被编译)(首先,你需要找到模块程序的位置。原则是:如果进口模块的名称是m1,译员必须找到它。

然后看看PYTHONPATH环境变量)d)在新模块执行相应的代码。在Python中包的定义是非常简单的。它的层次结构是一样. py所在的目录。关键是,包必须包含一个名为__init__ . py的文件。例如,我们可以组织一个包是这样的:init是顶级目录操作的结果如下。__init__。py可以是空的,只要它存在,解释器将它作为一个包。第一层:包,pack2,第二层包装:__init__ . py, module_pack2: __init__。py, module_call脚本:frompack进口func1frompack进口func2frompack2进口print_lstdef主要():func1 () func2 () print_lst () if __name__ = =\u201C__main__\u201D:主要()module_A: def func1():打印(MODULEAAAAA_func1111) def func2():打印同一层__init__ (\u201CMODULEAAAAA_func2222\u201D)。

module_A func2进口。module_A意味着_的个人理解module_A _init__的同一水平。py:当进口func1叫做脚本包,包的包将存在于默认目录由于操作,翻译首先会查找__init__ . py和__init__的内容。py并不是空的。介绍了两个函数fun1和fun2 module_A,和函数参考域生成(Tai Cai不知道独家术语),所以你可以直接使用:从进口fun1,包没有显式地指定module_A fun2如果第二行导入func2包下评论,也就是说,导入模块的包受到__init__ . py。有时一个通配符*出现在import语句,导入一个模块在所有元素,这是如何做到的呢?

py。如果你写(指定)__all__ = __init__ (\u201Cmodule_A\u201D)。py文件,如果你改变__all__ =[]回溯(最近的电话最后):将报告一个错误当你运行它,这意味着模块在包导入__init__ . py是有限的。最后,让我们看看如何调用彼此在包中。如果你想叫一个模块在同一个包,直接导入它。换句话说,在module_,您可以直接使用进口module_others。如果他们不在同一个包,举个例子,如果我们想叫FuncB module_ module_,那么它应该是这样的:从module_B包名(目录)。module_B进口funcB

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值