Python:导入子包有意义吗?

本声明来自
Python 3 Doc

Note that when using from package import item, the item can be either a submodule (or subpackage) of the package …

它说我们可以从包导入子包.

这里我创建了一个包音频,以及两个子包格式和声音.

《Python:导入子包有意义吗?》

然后我导入它的子包:

from audio import sound

print(type(sound))

输出是

class ‘module’

它表明,对于from package import子包,Python intepreter总是将项目作为模块,而不是子包.

from audio import sound

print(type(sound.echo))

而且,由于声音被视为模块,如何访问其echo模块?

它会提高

AttributeError: module ‘audio.sound’ has no attribute ‘echo’

因此,我想知道导入子包是否有意义,还是可以导入子包?

最佳答案 Python中只有一个
module类型,subpackage不是一个类型.

所有包和子包都是模块.

is it possible to import subpackage

是?您已将声音导入为音频子包…

is it meaningful to import sub-package

还有,是的.您还将如何使用任何模块定义的类和函数?

如果你想导入echo,那就这样做吧

from audio.sound import echo 
点赞