导入A.B也导入A? [英] import a.b also imports a?
本文介绍了导入A.B也导入A?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
当我导入包中的子包时,是否可以依赖父包也被导入这一事实?
例如,此方法有效
python -c "import os.path; print os.getcwd()"
我不应该显式import os
使os.getcwd
可用吗?
推荐答案
关于包,有一点很重要,那就是加载和可用之间是有区别的。
使用import a
加载模块a
(可以是包),并以a
的名称使其可用。
使用from a import b
加载模块a
(它肯定是一个包),然后加载模块a.b
并以b
的名称使仅此可用。请注意,a
也在该过程中加载,因此应该执行的任何初始化都将发生。
使用import a.b
加载这两个文件并使其可用(名称为a
和a.b
)。
这篇关于导入A.B也导入A?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文