关于python 中的__future__模块

本文介绍了Python中的导入机制,包括相对导入和绝对导入的区别,并详细解释了如何使用from __future__ import absolute_import语句来启用未来版本的特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Python的每个新版本都会增加一些新的功能,或者对原来的功能作一些改动。有些改动是不兼容旧版本的,也就是在当前版本运行正常的代码,到下一个版本运行就可能不正常了。

具体说来就是,某个版本中出现了某个新的功能特性,而且这个特性和当前版本中使用的不兼容,也就是它在该版本中不是语言标准,那么我如果想要使用的话就需要从future模块导入。在2.1版本之前并没有future,所以使用它会引发异常。当然,在以后的某个版本中,比如说3中,某个特性已经成为标准的一部分,那么使用该特性就不用从future导入了。

事例:from _future_ import absolute_import

python模块中的相对导入,绝对导入

相对导入:在不指明 package 名的情况下导入自己这个 package 的模块,比如一个 package 下有 test1.pytest2.py 两个文件,在 test1.pyfrom . import test2 即是相对导入 test2.py
绝对导入:指明顶层 package 名。比如 import paname,Python 会在 sys.path 里寻找所有名为 paname的顶层模块。

from __future__ import absolute_import: 在 3.0 以前的旧版本中启用相对导入等特性所必须的 future 语句。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值