cython相关内容

本地设置的Cython编译器指令会影响一个或所有功能吗?

我正在使用Cython来加快一些Python / Numpy代码的工作,并且对“本地”设置(定义为此处。就我而言,我想使用: @ cython.wraparound(False)#关闭负索引 @ cython.boundscheck(False)#关闭边界检查 我知道我可以全局定义在我的 setup.py 文件中,但我正在为非Cython用户开发,并且希望这些指令在 .p ..
发布时间:2020-10-14 20:03:56 Python

准备基于C的Cython软件包以在pypi上发布

我将创建C库,并希望使用Cython创建Python包装器。 现在我已经编译并捆绑了 mylib.a 文件(C文件),并且我想从我的图书馆位于Cython。 我成功创建了 .pyx 和 .pxd 文件,我可以使用 python setup.py build_ext 命令进行构建。当我尝试在pypi上发布它时,出现了我的问题。如果我运行我的 setup.py ,创建轮并发布,我可以从py ..
发布时间:2020-10-14 20:03:50 Python

使用Cython将结构从C返回到Python

我正在尝试将结构从c文件传递回Python。假设我有一个文件pointc.c,如下所示: typedef struct Point { int x; int y; }点; 结构点make_and_send_point(int x,int y); 结构点make_and_send_point(int x,int y){ 结构点p = {x,y}; return p; ..
发布时间:2020-10-14 20:03:45 Python

在Cython中将结构自动转换为Dicts

因此,如果您有头文件。 %% file test.h struct mystruct { int i; int j; }; 然后将其包装在Cython中: cdef extern来自“ test.h” nogil: struct mystruct: int i int j 和一些返回Py的函数: def spi ..
发布时间:2020-10-14 20:03:43 其他开发

使用Cython distutils时如何删除文档字符串?

如果我手动调用cython,则可以删除文档字符串,例如: cython -D mmod.py 但是当我尝试使用设置实用程序时,无法传递该-D参数。 setup.py 来自distutils.core导入设置 ,来自distutils.extension导入,扩展名 ,来自Cython.Distutils导入build_ext ext_m ..
发布时间:2020-10-14 20:03:34 Python

使用Cython从标头导出常量

我正在使用Cython包装C库。 C库的头文件定义了许多常量,因此在我的cython模块中,我有类似以下内容: cdef lib.h“: cdef int CONST_A = 0 cdef int CONST_B = 1 编译扩展名时,常量在Python中不可用。我试图做这样的事情,但是似乎没有用: cdef extern from“ lib.h”: c ..
发布时间:2020-10-14 20:03:30 Python

Cython安装问题

我安装了Cython 0.15,并尝试像这样安装它 python setup.py install 我明白了: 正在运行安装 正在运行构建 正在运行build_py 正在运行build_ext 正在构建'Cython.Plex.Scanners'扩展名 错误:找不到vcvarsall.bat 这是什么意思?我有Micorsoft Visual ..
发布时间:2020-10-14 20:03:26 Python

Cython使用cinit()

我有: cdef class BaseClass(): def __cinit __(self,char *名称): 打印“ BaseClass __cinit __()” #... def __dealloc __(): 打印“ BaseClass __dealloc __()” #... cdef类DerClass(BaseClass): def __cinit __ ..
发布时间:2020-10-14 20:03:22 其他开发

Cython:使用将Cython嵌入C的API的分段错误

我正尝试按照 O'reilly Cython的书将Cython代码嵌入到C中第8章。我在Cython的文档但仍然不知道该怎么办: 如果要使用这些功能的C代码是多个共享的一部分库或可执行文件,则需要在使用这些函数的每个共享库中调用import_modulename()函数。如果在调用以下api调用之一时因分段错误而崩溃(在Linux上为SIGSEGV),则可能表明包含正在生成分段错误的api调 ..
发布时间:2020-10-14 20:03:20 Python

构建cython模块时如何覆盖-DNDEBUG编译标志

我有一个Cython模块,该模块通过 cdef extern 调用C ++函数。 C ++函数具有 assert()语句,我想检查这些断言。但是,当我通过调用 python setup.py build_ext --inplace 创建模块时,总是使用 -DNDEBUG 。只要运行代码,就不会检查断言。 我找不到覆盖 -DNDEBUG 使用 setup.py 。这可能吗? 目前,我发现 ..
发布时间:2020-10-14 20:02:12 C/C++开发

为什么setup.py开发不起作用?

我想在开发模式下安装我的Python模块。正如我在许多示例中看​​到的, python setup.py development 应该可以做到这一点。但是我的 setup.py 文件没有 develop 命令: 来自distutils.core导入设置 来自distutils.extension import扩展 来自Cython.Build import cythonize 来自Cyth ..
发布时间:2020-10-14 20:02:08 Python

此处不允许使用cdef语句进行结构

我有一个带有结构定义(Astruct.pxd)的简单Astruct.pyx: cdef结构A: int x int y int z 还有Cython函数,使用它的(struct_test.pyx): 来自随机导入randint 来自Astruct cimport A def do(): N = 1000000 M = 65535 As ..
发布时间:2020-10-14 20:02:06 其他开发

在Cython中共享扩展类型以进行静态输入

我将Python类转换为.pyx文件中的扩展类型。我可以在其他Cython模块中创建该对象,但是我不能对其进行静态输入。 这是我的一部分class: cdef class PatternTree: cdef public PatternTree上一个 cdef public PatternTree下一个 cdef public PatternTree父级 cdef pub ..
发布时间:2020-10-14 20:02:03 Python

模板类中的Cython C ++静态方法

问题 我在C ++中有一个带有静态方法的模板类。看起来或多或少是这样的: template 类Foo { static std :: shared_ptr doSth(); } 因此在C ++中,您会这样称呼: Foo< ; Int> :: doSth(); 。但是,在Cython中,调用静态方法的方法是使用类名 ..
发布时间:2020-10-14 20:02:01 C/C++开发

接收全局变量(Cython)

我在jupyter笔记本中使用Cython。 据我所知,Cython会编译def函数。 但是当我想用全局变量调用函数时没有看到。 是否有任何方法可以调用带有变量的函数? one1 = 1 %% cython cimport numpy as np cdef nump(number1): 返回数字1 + 1 nump(one1) ****这 ..
发布时间:2020-10-14 20:00:57 Python

无法将std :: sort中的cdef函数用作比较函数

下面的代码来自此文件。它可以在Linux上正确编译,但不能在OS X上编译。 我想对自定义间隔的向量进行排序: stdsort(intervals.begin(),interval.end(),compare_start_end) 我的比较函数如下: cdef uint32_t compare_start_end(interval lhs,interval ..
发布时间:2020-10-14 20:00:35 C/C++开发