我想在python脚本中使用Orange.associate
和Orange.data.sql
模块,但在这两种情况下我都会在import Orange
之后得到AttributeError。
但是,在Orange GUI中,两个小部件都按预期工作。
当我用sys.path
检查python路径时,python解释器可以访问Orange库,全局dist-packages和本地站点包。
我运行ubuntu 14.04并按照此处的说明将Orange 3.3安装到/opt
目录中:
http://orange.biolab.si/download/linux/
我对python环境非常不熟悉,也是Linux的初学者,所以任何提示都会受到赞赏。
以下是我所做的一个例子:
(orange3env)bdukai@balazs-dukai:/opt/orange$ python
Python 3.4.3 (default, Oct 14 2015, 20:28:29)
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import Orange
>>> Orange.data.sql
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'sql'
>>> Orange.data.Table
<class 'Orange.data.table.Table'>
答案 0 :(得分:1)
在python中导入不会自动导入子模块(子包)。如果要使用Orange.data.sql,则应直接导入:
>>> import Orange.data.sql
>>> Orange.data.sql
<module 'Orange.data.sql' from '.../Orange/data/sql/__init__.py'>