这个Python导入是如何工作的

时间:2017-02-23 13:15:03

标签: python

我正在使用以下布局在Python 2.7项目中工作

package
 - __init__.py
 - module_one.py
 - module_two.py
 - module_three.py

按照惯例,我们会导入import package.module_one之类的内容,然后调用package.module_one.do_something到目前为止这么好。但是,仅使用此导入功能,我还可以调用package.module_two.do_something_else,而无需导入package.module_two。我尝试使用Python 3.5,我得到AttributeError: module 'package' has no attribute 'module_two'。我想摆脱这种魔力,并被迫总是必须导入我使用的一切或至少得到一些警告。有没有办法做到这一点?我试过谷歌,但很难找到合适的术语来查找更多信息。添加from __future__ import absolute_import没有效果,因此似乎没有任何关系。

0 个答案:

没有答案