python __future__ package的几个特性 - harrychinese - 博客园
==============================
__future__的absolute_import
==============================
from __future__ import absolute_import, 字面理解好像是仅仅允许绝对引用, 其实不然, 真实意思是禁用 implicit relative import, 但并不会禁掉 explicit relative import.
举个例子, 目录结构如下,
-cake
|- __init__.py
|- icing.py
|- sponge.py
-drink
|- __init__.py
|- water.py
在 sponge.py 引用 icing , 有多种方法:
1. import icing # implicit relative import, py2已强烈不推荐使用, py3已经不可用了
2. from . import icing # explicit relative import, python.org 官方虽不推荐, 但这却是事实标准
3. from cake import icing # absolute import, python 官方推荐.
No comments:
Post a Comment