Python系列教程235——相对导入

朋友们,如需转载请标明出处:https://blog.csdn.net/jiangjunshow

什么叫做相对导入?

一句话!导入同一个包中的模块就叫做相对导入。例如你要导入其它包中的模块,那就不是相对导入,而是绝对导入。

如何用代码来实现相对导入呢?

很简单!在from导入语句中加一个点号就可以了。

from .import spam # Relative to this package

上面就是一个相对导入语句(注意看,import单词前面有一个点号)。代码意思就是从当前代码文件所在的包中导入一个名为spam的模块。注意!注意!注意!在Python 3.0版本后,它只搜索当前的包,如果当前包中没有名为spam的模块,导入就失败了。而在Python2.6中,会先执行相对导入,如果找不到,再继续执行绝对导入,也就是去其它地方继续找。如果没有那个小点号,那么就不是相对导入,那么就不会搜索当前包。

from .spam import name

上面代码的意思是,从当前包中找到一个名为spam的模块,然后导入里面名为name的变量。

为什么要使用相对导入?

一句话!解决导入时的模糊性。这一句话有同学可能理解不了,下面我用很多句话来帮你深入深入又深入滴理解!

假射有一个包,名为mypkg,里面有如下文件

mypkg\

   __init__.py

   main.py
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值