从包导入模块VS导入package.module作为moduleName

时间:2017-05-02 13:13:55

标签: python python-module

.
├── bank
│   ├── __init__.py
│   ├── currency.py
│   └── user.py
└── script.py

假设这是我的文件夹结构。

之间有什么区别吗?
from bank import user

import bank.user as user

script.py内?

据我所知,两者都在全局命名空间中导入user模块user。有什么不同吗?

1 个答案:

答案 0 :(得分:1)

在这方面没有区别,我认为为什么Python甚至允许这样做的设计很糟糕。另一个不一致是,对于模块和包,两种方式都是允许的,但对于标识符,只允许一种方式。例如

from bank.user import user_func

没问题,但是

import bank.user.user_func as user_func

给出一个错误,即user_func不是模块,而bank.user不是包。