首页 > 代码库 > Python import 模块导入问题
Python import 模块导入问题
最近在用Python做决策树(Decision tree)时, 遇见了一个以前没有遇到的问题,就是用‘import sklearn.tree‘时一切正常,但是‘import sklearn..... sklearn.tree‘时却报错说: AttributeError: ‘module‘ object has no attribute ‘tree‘.
python的导入机制是这样的,在用 ‘import sklearn‘ 时,它只会导入 \${sklearn_dir}/__init__.py 里定义好的对象(objectives), 然后保存在自己的命名空间(namespace)里并可以后来直接使用; 在用‘ import sklearn.tree‘ 时,python实际上导入了两个文件,\${sklearn_dir}/__init__.py 和 \${sklearn_dir}/tree/__init__.py, 注意tree在这儿是以一个子文件夹的形式存在的。
这样回归到一开始的问题,就会发现是因为 sklearn.tree是一个单独存在的子文件夹/模块,并且在__init__.py里没有被定义,这样当然就不能用第一种办法来引用啦~
Python import 模块导入问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。