python学习手册笔记——23.模块包

00.除了模块名之外,导入也可以指定目录路径。Python代码的目录就是包。

01.选择点号语法、一部分是考虑到跨平台,但也是应为import语句中的路径编程实际的嵌套的对象路径。这种语法也意味着,如果你忘了import语句中省略.py,就会得到奇怪的错误信息。

02.


03.from * 语句的行为:作为一个高级功能,你可以在__init__.py文件内使用__all__列表来定义目录以from*语句形式导入时,需要导出什么。在__init__.py文件中,__all__列表时指当包(目录)名称使用from*的时候,应该导入的字模块的名称清单。

04.__init__.py包文件:包导入语句的路径中的每个目录内都必须有__init__.py这个文件,否则导入包会失败。

05.包让导入更具信息性,并可以作为组织工具,简化模块的搜索路径,而且可以解决模糊性。

06.决定自己的系统中使用每一个utilities.py文件内的一些程序代码。

07.


08.他们需要位于统一包中的模块,而不是位于模块导入搜索路径上某处的模块(绝对导入)

09.from .spam import name:意味着"从名为spam的模块导入变量name,而这个spam模块域包含这条语句的文件位于同一个包下"

10.


11.模块查找规则总结:
*简单模块名通过搜索sys.path路径列表上的每个目录来查找,从左到右进行。
*包时带有一个特殊的__init__.py文件的Python模块的直接目录,这使得一个导入中可以使用A.B.C目录路径语法。
*在一个包文件中,常规的import语句使用和其他地方的导入一样的sys.path搜索规则。

12.相对导入语法实际上时一种绑定声明,而不是一种偏好,注意到这点很重要。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值