我有一个在 python2.7 下开发的 python 包,但我需要将它移植到 python3.6 。我在代码的某些部分使用了 cython,因此该包同时具有.py
和.pyx
文件。
我尝试了该2to3
命令,但出现了一个我既无法理解也无法解决的错误。
示例:我有以下test.pyx
文件
# cython: profile=False
cimport cython
@cython.boundscheck(False)
@cython.wraparound(False)
@cython.profile(False)
cpdef sillyfunction():
print 'Thank you for your kind help'
return
我跑2to3 test.pyx
。我得到的是:
user@machine:~$ 2to3 test.pyx
RefactoringTool: Skipping optional fixer: buffer
RefactoringTool: Skipping optional fixer: idioms
RefactoringTool: Skipping optional fixer: set_literal
RefactoringTool: Skipping optional fixer: ws_comma
RefactoringTool: Can't parse test.pyx: ParseError: bad input: type=1, value=u'cython', context=(u' ', (2, 8))
RefactoringTool: No files need to be modified.
RefactoringTool: There was 1 error:
RefactoringTool: Can't parse test.pyx: ParseError: bad input: type=1, value=u'cython', context=(u' ', (2, 8))