无法在Orange python环境中导入模块,但Orange GUI工作

时间:2016-05-05 15:01:32

标签: orange

我想在python脚本中使用Orange.associateOrange.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'>

1 个答案:

答案 0 :(得分:1)

在python中导入不会自动导入子模块(子包)。如果要使用Orange.data.sql,则应直接导入:

>>> import Orange.data.sql
>>> Orange.data.sql
<module 'Orange.data.sql' from '.../Orange/data/sql/__init__.py'>