cython将python转换为c限制

问题描述

我正在尝试将一个简单而愚蠢的脚本从Python转换为C:

#script.pyx
import os
import sys
import numpy as np
from datetime import datetime

x = 5

因此,按照本教程创建了setup.py文件:

from distutils.core import setup
from Cython.Build import cythonize

setup(ext_modules = cythonize('script.pyx'))

当我尝试运行时:

python setup.py build_ext --inplace

我有一个正确的c文件,例如输出,但是我也有此错误:

tree = Parsing.p_module(s,pxd,full_module_name)
error: [WinError 2] Cannot find the specified file

从这个结果中我感到怀疑:使用cython可以转换任何Python脚本吗?甚至最复杂?有什么限制?如果我有一个导入库和/或其他类的文件? 谢谢

解决方法

有时候,我们需要完全指定脚本的位置,而不仅仅是输入文件名,您必须输入完整路径,否则您必须cd到正确的目录,

“ / home / userrr / Desktop / folder45 / script.pyx”

代替“ script.pyx”

它仍然无法正常工作,请卸载python,重新安装python并重新安装Cython,另一个问题可能是pyx源代码,pyx源代码应不同于普通python语言,请检查cdef函数,cdef Cythonize语言也

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...