编译 Cython 文件:word2vec_inner.pyx:1:0 时出错:'TWE-1.gensim.models.word2vec_inner' 不是有效的模组名称



setup.py

from distutils.core import setup
from distutils.extension import Extension
from Cython.Build import cythonize
import numpy
extensions = [
    Extension("word2vec_inner", ["word2vec_inner.pyx"],
          include_dirs=[numpy.get_include()])
    ]
setup(
    name="word2vec_inner",
    ext_modules=cythonize(extensions),
)

错误:

Warning: Extension name 'word2vec_inner' does not match fully qualified name
'TWE-1.gensim.models.word2vec_inner' of 'word2vec_inner.pyx'
Compiling word2vec_inner.pyx because it changed.
[1/1] Cythonizing word2vec_inner.pyx
Error compiling Cython file:
------------------------------------------------------------
...
#!/usr/bin/env cython
^
------------------------------------------------------------
word2vec_inner.pyx:1:0: 'TWE-1.gensim.models.word2vec_inner' is not a valid 
module name
Traceback (most recent call last):
  File "D:PyCharm 2017.3helperspydevpydevd.py", line 1668, in <module>
    main()
  File "D:PyCharm 2017.3helperspydevpydevd.py", line 1662, in main
    globals = debugger.run(setup['file'], None, None, is_module)
  File "D:PyCharm 2017.3helperspydevpydevd.py", line 1072, in run
    pydev_imports.execfile(file, globals, locals)  # execute the script
  File "D:/pycharm/TWE/TWE-1/gensim/models/setup.py", line 11, in <module>
    ext_modules=cythonize(extensions),
  File "E:Python27libsite-packagescython-0.27.3-py2.7-
win32.eggCythonBuildDependencies.py", line 1039, in cythonize
    cythonize_one(*args)
  File "E:Python27libsite-packagescython-0.27.3-py2.7-
win32.eggCythonBuildDependencies.py", line 1161, in cythonize_one
    raise CompileError(None, pyx_file)
Cython.Compiler.Errors.CompileError: word2vec_inner.pyx

我已经安装了适用于Python 2.7和cython的Microsoft Visual C++编译器,但它无法编译。它总是出现这个问题。如何解决这个问题?谢谢!

我已经找到了解决Cython编译错误"不是有效的模块名称"的方法 它是文件夹名称中的破折号。我现在已经重命名了该文件夹。但我不知道为什么。

最新更新