5
好吧,我不认为,我可以用单词解释这个问题,所以,这里是ipython会话的片段,我在这里输入scipy,以便构造一个稀疏矩阵。在scipy中导入模块有什么问题,它是一个错误吗?
In [1]: import scipy as sp
In [2]: a = sp.sparse.lil_matrix((5,5))
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
/home/liveuser/<ipython-input-2-b5a55fc2d0ac> in <module>()
----> 1 a = sp.sparse.lil_matrix((5,5))
AttributeError: 'module' object has no attribute 'sparse'
In [3]: import scipy.sparse as spar
In [4]: ax = spar.lil_matrix((5,5))
In [5]: a = sp.sparse.lil_matrix((5,5)) # you are kidding me?
In [6]: a
Out[6]:
<5x5 sparse matrix of type '<type 'numpy.float64'>'
with 0 stored elements in LInked List format>
In [7]: ax
Out[7]:
<5x5 sparse matrix of type '<type 'numpy.float64'>'
with 0 stored elements in LInked List format>
正在发生的事情有,为什么不能使用SP构建一个稀疏矩阵,在第一时间,当我在一个特定的方式导入稀疏子模块(如片段),SP和晶石变量现在可以用来构建稀疏矩阵。(我猜他们只是引用同一个对象)
我转载这条巨蟒默认的shell,(所以它不是IPython的具体)
这是怎么回事,是它通过设计??如果这么亲切地阐述。或者它是一个错误?
我的系统是Fedora 16 KDE-scientific,64位。
不,我正在导入总scipy作为sp,我希望从代码段清楚。你的意思是当我导入scipy作为sp,稀疏子模块不导入,因为它是可选的? – fedvasu 2012-01-04 14:53:10
@fedvasu:无论您如何导入scipy,都不会导入'sparse'。您必须明确导入并使用其全名。 – 2012-01-04 14:53:53
为什么这样? ,你能否在这里澄清一点:http://chat.stackoverflow.com/rooms/6384/quickscipy-talk – fedvasu 2012-01-04 14:56:11