[英]Numpy Cimport error using cython
I am trying to Cimport Numpy into a Python 2.7 shell from a .pyx
file, but it keeps giving me the same error: 我试图从
.pyx
文件Cimport Numpy到Python 2.7 shell,但它一直给我同样的错误:
I made a .pyx
file called numpyx
just to see if it was part of the bigger code I was running, the file contains: 我创建了一个名为
numpyx
的.pyx
文件,看看它是否是我正在运行的更大代码的一部分,该文件包含:
cimport numpy as np
a = np.arange(0,10)
print 'a= ',a
I get the following error every time: 我每次都会收到以下错误:
Traceback (most recent call last):
File "<pyshell#82>", line 1, in <module>
import numpyx
File "C:\Users\Scott\AppData\Roaming\Python\Python27\site-packages\pyximport \pyximport.py", line 335, in load_module
self.pyxbuild_dir)
File "C:\Users\Scott\AppData\Roaming\Python\Python27\site-packages\pyximport\pyximport.py", line 183, in load_module
so_path = build_module(name, pyxfilename, pyxbuild_dir)
File "C:\Users\Scott\AppData\Roaming\Python\Python27\site-packages\pyximport\pyximport.py", line 167, in build_module
reload_support=pyxargs.reload_support)
File "C:\Users\Scott\AppData\Roaming\Python\Python27\site-packages\pyximport\pyxbuild.py", line 85, in pyx_to_dll
dist.run_commands()
File "C:\Python27\lib\distutils\dist.py", line 953, in run_commands
self.run_command(cmd)
File "C:\Python27\lib\distutils\dist.py", line 972, in run_command
cmd_obj.run()
File "C:\Users\Scott\AppData\Roaming\Python\Python27\site-packages\Cython\Distutils\build_ext.py", line 135, in run
_ build_ext.build_ext.run(self)
File "C:\Python27\lib\distutils\command\build_ext.py", line 340, in run
self.build_extensions()
File "C:\Users\Scott\AppData\Roaming\Python\Python27\site-packages\Cython\Distutils\build_ext.py", line 143, in build_extensions
self.build_extension(ext)
File "C:\Python27\lib\distutils\command\build_ext.py", line 499, in build_extension
depends=ext.depends)
File "C:\Python27\lib\distutils\ccompiler.py", line 624, in compile
self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts)
File "C:\Python27\lib\distutils\cygwinccompiler.py", line 166, in _compile
raise CompileError, msg
ImportError: Building module failed: ["CompileError: command 'gcc' failed with exit status 1\n"]
I don't understand why it won't work, since it compiles .pyx
files fine as long as cimport
isn't in them. 我不明白为什么它不起作用,因为只要
cimport
不在其中就可以编译.pyx
文件。
If anyone could shed some light on this it would be great! 如果有人能够对此有所了解那就太棒了!
Well the function your looking for is available in the python package. 那么你在寻找的函数可以在python包中找到。 (I find no reference to linspace in numpy.pxd)
(我在numpy.pxd中找不到linspace的引用)
I usually do something along these lines: 我通常会沿着这些方向做点什么:
import numpy as np
cimport numpy as cnp
def foo(double x):
cdef cnp.ndarray[cnp.float64_t, ndim=1] y = np.linspace(0, 10, 11)
# do whatever
return y
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.