cython相关内容

设置setuptools以创建带有头文件的可导入包

我尝试实现答案 https://stackoverflow.com/a/57480599/7482208 ,但是我是卡住了从另一个导入一个包的过程. 代码在这里: https://github.com/iamishalkin/setuptools_cython_question 我想要的是从wrapper文件夹中获得一个独立的程序包 wrap ,这样您就可以在没有 cust 程序包的情 ..
发布时间:2021-04-28 18:33:54 Python

time.time()无法在Cython中运行while循环达预定时间

我有一个Python模块,其中包含一个while循环,该循环应该运行固定的时间.我通过在time.time()的输出中添加一个常量并运行直到time.time()大于该变量来完成此操作.这没有出现任何问题,但是在Cython中,同样的事情对我不起作用.现在我越来越不准时机了. 仅举一个最小的例子来说明这一点: 导入时间cdef float wait_time = 3def slow():c ..
发布时间:2021-04-28 18:33:51 Python

Cython布尔numpy数组

我有一个numpy布尔数组: myarr = np.array([[False,True],[True,False]]) 如果我尝试用它初始化Cython MemoryView,如下所示: cdef bint [:,:] mymem = myarr 我收到此错误: ValueError:不了解字符缓冲区dtype格式字符串('?') 如果我改为执行此操作,则效果很好: ..
发布时间:2021-04-28 18:33:48 Python

Cython的language_level 3和3str有什么区别?

在即将到来的Cython 3.0版本中, 3str language_level(由设置方法),我们将收到以下警告: FutureWarning:未设置Cython指令'language_level',使用'3str'现在(Py3).这与以前的版本有所不同!文件:/home/ed/mygithub/cython/foo.pyx tree = Parsing.p_module(s,pxd,fu ..
发布时间:2021-04-28 18:33:45 Python

在cython中生成高斯随机数的最有效,最便捷的方法是什么?

我正在编写一个cython应用程序,需要在紧密的嵌套循环中即时生成一个高斯随机变量.我想这样做而不会引入任何额外的依赖关系,例如,对GSL的依赖. 对于当前我可以使用均匀随机数字即时实现的方法的最低版本: 来自libc.stdlib cimport rand,RAND_MAX的 将numpy导入为npcdef double random_uniform():cdef double r = ..
发布时间:2021-04-28 18:33:42 Python

使用numpy或cython进行高效的成对DTW计算

我正在尝试计算numpy数组中包含的多个时间序列之间的成对距离.请参见下面的代码 print(类型(销售))打印(sales.shape)(687,157) 因此, sales 包含687个长度为157的时间序列.使用pdist计算时间序列之间的DTW距离. 导入fastdtw将scipy.spatial.distance导入为sddef m ..
发布时间:2021-04-28 18:33:39 Python

Cython cimport从另一个目录

对于背景,我阅读了以下问题: https://github.com/cython/cython/wiki/PackageHierarchy https://cython.readthedocs.io/zh-CN/latest/src/userguide/sharing_declarations.html#search-paths-for-definition-files Cython ..
发布时间:2021-04-28 18:33:35 其他开发

通过Cython实现Numba的表演

通常,在使用Cython时,我能够与Numba媲美.但是,在此示例中,我没有这样做-Numba比我的Cython版本快4倍. 此处是Cython版本: %% cython -c = -march = native -c = -O3将numpy导入为np将numpy导入为np导入cython@ cython.boundscheck(假)@ cython.wraparound(错误)def ..
发布时间:2021-04-28 18:33:27 Python

ctypes:获取c函数的实际地址

这很棘手(至少对我来说是这样:-),也许不可行.但是我想问你. 我有这个c共享库: #include#include静态整数变量= -666;int get_value(){返回变量}void print_pointer_to_get_value(){printf("pointer_to_get_value:%p \ n",& get_value ..
发布时间:2021-04-27 20:01:47 Python

Python C包装器,用于读取可变的参数长度

我正在尝试替换MATLAB/MEX并切换到Python.我遇到过SWIG,CTYPE和AMP.Cython作为可能的解决方案,并开始尝试SWIG(这似乎很简单). 我的C函数具有可变的参数长度,形式为 main(int argc,char * argv []).我在网上找到了解决方案,但是与SWIG一起使用会导致很多问题. 其他方法(ctypes/Cython)更简单吗? 任何使用S ..
发布时间:2021-04-27 20:00:30 Python

如何在多个C扩展名之间共享C-Singleton

我有一个静态库(或一堆c/cpp文件),其中包含一个单例,并由两个不同的C扩展名使用/链接.但是,C库中的单例不再具有单例的作用: import getter进口二传手#设置单例:setter.set(21)#获取单例:print("singleton:",getter.get())#打印旧值:42 这里是一个最小的示例,为简单起见,使用Cython演示了此问题(所有文件都在同一文件夹中) ..
发布时间:2021-04-24 21:11:00 Python

用Cython封装枚举类

我试图将枚举类包装在c ++头文件中以用于cython项目. 例如,如何 枚举类颜色{红色,绿色= 20,蓝色}; 用Cython包裹起来. 解决方案 CPP类 枚举类颜色{红色,绿色= 20,蓝色}; 类型的定义 来自"colors.h"的 cdef extern:cdef cppclass颜色:经过 颜色类型的定义 来自"colors.h"命名空间"Col ..
发布时间:2021-04-19 19:20:48 C/C++开发

Python封装:将Boost库作为依赖项

假设有人想打包依赖于C ++ boost库的Python(Cython)库. 配置 setup.py 的最佳方法是什么,以便正确告知用户需要安装boost库(即 apt-get install libboost-dev)在Ubuntu等其他操作系统中)?还是将boost库包含在python包分发中是更好的做法? 解决方案 这个问题最好问为 分发Python扩展的最佳方法是什么, ..
发布时间:2021-04-15 20:47:36 Python