使用numpy.linalg.slogdet需要哪个版本的python?
我正在Condor上使用requirement使用numpy.linalg.slogdet需要哪个版本的python?,python,numpy,condor,Python,Numpy,Condor,我正在Condor上使用requirementRequirements=(HAS_NUMPY=?=TRUE)运行python脚本。 这适用于正常的numpy函数,但当我使用numpy.linalg.slogdet函数时,会出现一个错误: 回溯(最近一次呼叫最后一次): 文件“/var/lib/condor/execute/dir_17583/condor_exec.exe”,第11行,在 ans=np.linalg.slogdet(a)[1] AttributeError:“module”对象没
Requirements=(HAS_NUMPY=?=TRUE)
运行python脚本。
这适用于正常的numpy函数,但当我使用numpy.linalg.slogdet
函数时,会出现一个错误:
回溯(最近一次呼叫最后一次):
文件“/var/lib/condor/execute/dir_17583/condor_exec.exe”,第11行,在
ans=np.linalg.slogdet(a)[1]
AttributeError:“module”对象没有属性“SlogSet”
虽然我很难知道该节点上存在哪个版本的python,但主condor机器上的版本是2.6.6
代码非常简单:
import numpy as np
a=np.diag(np.arange(1,9))
ans=np.linalg.slogdet(a)[1]
我的问题是:发生此错误是因为np.linalg.slogdet需要更高版本的python吗?
如果是,有没有办法指定Condor上所需的python版本 更新: 使用mgilson的建议,发现numpy版本是1.4.1,因此出现了问题。 所以,现在这是一个Condor的问题:是否有办法指定Condor提交文件中所需的numpy版本;比
Requirements=(HAS_NUMPY=?=TRUE)
更好的东西?
谢谢您最好检查机器上的
numpy
版本:
In [50]: np.version.version
Out[50]: '1.8.1'
因为文档中说,
np.linalg.slogdet
函数是“versionadded::1.6.0”。似乎是在numpy 1.6中引入的。要检查您的numpy版本,您可以打印numpy.\uuuuu version\uuuuuu
。谢谢,使用了它,发现版本是1.4.1。这就是问题所在。