Python导入模块与软件包:python如何解决模棱两可的情况?

时间:2018-12-06 21:59:28

标签: python python-import

说我具有以下文件夹结构:

|-- some_package/
    |-- __init__.py
    |-- some_module.py
    |-- some_module/
        |-- __init__.py

在some_package / some_module.py文件中,我具有以下内容:

print('this is some_module.py')

在文件some_package / some_module / init .py中,我具有以下内容:

print('this is some_module/__init__.py')

现在,如果启动ipython并发出导入命令:

import some_module

我看到以下输出:

  

这是some_module / __ init __。py

表示已执行__init__.py软件包,而不是some_module.py。

我的问题是: 1.这是定义的行为吗?与“模块”导入相比,它总是会首选“包”导入吗? 2.该文件记录在任何地方吗?我浏览了python import system docs,但没有找到。

关于我为什么要知道,我只是在问一个朋友:)

0 个答案:

没有答案