Python Cython在Win 7上未使用Anaconda3 64位的MemoryView
编辑:解释为什么我不认为这是一个重复的 这个问题是针对Anaconda3的,它应该是最大的scientific python发行版,所以我认为它肯定可以与cython和memoryview一起使用 老问题是我定制了tdm gcc和python,所以我很有可能对此不起作用负责 总的来说,这两个问题可能不是同一个根,并且完全针对不同的用户Python Cython在Win 7上未使用Anaconda3 64位的MemoryView,python,gcc,numpy,cython,anaconda,Python,Gcc,Numpy,Cython,Anaconda,编辑:解释为什么我不认为这是一个重复的 这个问题是针对Anaconda3的,它应该是最大的scientific python发行版,所以我认为它肯定可以与cython和memoryview一起使用 老问题是我定制了tdm gcc和python,所以我很有可能对此不起作用负责 总的来说,这两个问题可能不是同一个根,并且完全针对不同的用户 注:在Cython邮件列表和Anaconda邮件列表中共同列出。很抱歉向这两个列表的订户发送垃圾邮件 亲爱的各位 我有点震惊Anaconda 3出现了这个问题(
注:在Cython邮件列表和Anaconda邮件列表中共同列出。很抱歉向这两个列表的订户发送垃圾邮件 亲爱的各位 我有点震惊Anaconda 3出现了这个问题(无论是
cython
还是memoryview
都非常常用)。我做错什么了吗
环境:Windows 7,Anaconda 3(默认设置为conda install mingw
,64位,Python 3.4 64位
# test_memory_view.pyx
import numpy as np
cimport numpy as np
cpdef double [:] func():
cdef double [:] a = np.arange(10.)
return a
# test_compiler_script.py
import numpy as np
import pyximport
pyximport.install(setup_args={'script_args':['--compiler=mingw32'],
'include_dirs':np.get_include()},
reload_support=True)
import test_memory_view
它不会运行,因为它会说“UnicodeDecodeError:'utf-8'编解码器无法解码位置1:无效起始字节”中的字节0x83“
如果我使用WinPython,代码将正确运行,因为它使用的是另一个版本的gcc(Carl Kleffner的mingw-w64 numpy静态工具链)
谁能确认一下吗?谢谢
Shawn使用conda mingw和Cython()时存在一些已知问题。您可以尝试安装,或者使用Visual Studio。可能重复的So来澄清:您没有使用TDM-GCC,而是使用Anaconda附带的默认版本的mingw GCC?(我不知道答案,但我想这些信息对知道的人会很有用)@DavidW是的!谢谢你帮我澄清。我的操作有点误导。简言之,我1)使用默认设置安装了Anaconda3,2)使用了conda安装mingw。就这样!我现在将修改OP以使其更清晰。谢谢亚伦!你总是很乐于助人。是的,我使用mingw静态工具链解决了这个问题。另外,谢谢你的参考!我将向github报告此问题,以供将来参考。