• Cython初始化内存视图的最快方法

    我正在用python编写一个实时数据处理程序,在数据处理部分我使用cython。 不幸的是,初始化numpy数组时使用np.零速度相当慢。我发现在启动时创建一次数组,然后循环遍历这些值并将它们设置为零比创建一个新数组要快。 @cython.wraparound(False) @cython.boundscheck(False) cpdef zeros_int32(unsigned long long[::1] arr): cdef unsigned int x wit...
  • Cython拒绝融合DType中的float32

    我正在尝试编写一个Cython函数,该函数将能够使用包含float32的融合dtype。但是,除非明确指定,否则它将拒绝输入。为什么呢 例如: cimport numpy as cnp ctypedef fused floatdtype: cnp.npy_float32 @cy.boundscheck(False) @cy.wraparound(False) cpdef void test(floatdtype smth): print(smth) 然后在Python中,以下内容引发“...
  • 测试fib递归函数时cython比原始cpython慢

    我使用cython测试了fibs函数,但是它的运行速度比原始cpython慢​​得多,代码如下: pyx: cdef int _fib(int n): if n == 1 or n == 0: return 1 else: return _fib(n-1) + _fib(n-2) def fibs(n): return _fib(n) 和python代码: def fib(n): if n == 1 or n == 0: ...
  • 如何在Cython中使用void指针

    嗨,我正在尝试在Cython中使用void指针,但我不知道如何使用它们。 在C中,我可以这样做: #include <stdio.h> int n = 10; void* ptr = &n; printf("pointer is %d", *(int*)ptr); 并将其转换为Cython,我尝试同时使用: from libc.stdio cimport printf cdef int n = 5 cdef void* ptr = &n printf("%d", (<int*>ptr)) 和: prin...
  • 如何用C实现Python中的方法?

    这可能是关于“ C”而不是“ Cython”的问题,但是我试图了解类在cython中的工作方式。 当我在Cython中编写课程时: cdef class Myclass: def __init__(self, a1, ...): self.attribute1 = a1 def __cinit__(self, char *ca1,...): self.c_attribute1 = Ca1 ... I understand that it'...
  • 是否有理由不在任何地方使用cython?

    一个小时前我学习了cython,在代码的数千行中更改了约10行,并且在分析器看来,这甚至还不是我的主要瓶颈,但我已经获得了荒谬的速度改进(但仍被称为百万次) 。 并且cython报告仍然以黄色显示在cythonized代码中的几乎所有内容。 (据我所知这不是最佳选择) 这就是我更改的内容,其他所有内容仍保持“原样”: @cython.freelist(32) cdef class Vector: cdef public double x, y def __cinit__(self, dou...
  • 为什么Cython编译成C的速度比C ++快得多

    遗憾的是,由于NDA,我无法共享源代码,但是无论如何,我认为这个问题仍然很有趣。 语境 I have a file (my_cython_file.pyx) which I sped up with cython with the usual: my_cython_file.pyx -transpiling-> my_cython_file.c -compiling-> my_cython_file.so 由于我想使用一些外部C ++库,因此我决定将我的代码直接转换为C ++,而对pyx文件的更改最少: m...
  • ImportError:动态模块未使用docker定义模块导出功能

    另一个人编写的crypto.so文件正在Python中使用。 在普通的centos桌面(gcc,gcc-c ++)中使用它没有问题。 但是,即使您在docker安装的centos中进行相同的操作,也会发生动态模块错误。 我无法检查该文件的内容。 为什么会发生此错误? 我没有安装一些必需的软件包吗? (Python,路径和其他环境变量使用的完全相同。) 奇怪的是,第一次导入时有错误,但下次导入时没有错误。(当然,程序不是正常的,因为它不是正常的导入) >>> import crypto Traceback (...
  • 用Cython和Pandas读取TXT文件

    我有一个接近4GB的海量数据集(文本文件),并希望使用pandas数据框使用该数据集。我可以读取文件,但是需要花费几分钟才能读取所有数据。 因此,我想利用Cython库利用C的速度。 我在寻找如何使用Cython将文本文件读取到熊猫数据框中时遇到麻烦。 任何指导都会有所帮助。
  • 如何从C ++代码运行Python代码? (-有一些限制。)

    我需要从C ++代码运行python代码。 我进行了很多搜索,发现有一些选择。 The first & easiest option is running python code directly from the C++ program using Python.h C++ library; - include <python.h> But, I don't want it since every time it sets up a python interpreter inside the C++ p...
  • 使用Cython加速以下循环?

    目前,我执行循环所需的Cython优化量大约需要160秒。我还有什么其他办法可以加快速度吗?理想情况下,我希望获得更大的性能提升,因为它的另一端将花费大量时间。 请注意,df只是一个熊猫数据框。 cpdef get_reward(self, list weights): cdef int mm_length = round(len(df)*0.03) cdef int randomlower = np.random.randint(low=0, high=mm_leng...
  • cython无法达到预期的速度(在字符串列表中搜索)

    我无法使用下面定义的函数bulk_phone_finder(使用phonenumbers pypi库)的cy​​thonized版本来加快计算速度: from phonenumbers import PhoneNumberMatcher from phonenumbers.phonenumberutil import SUPPORTED_REGIONS def bulk_phone_finder(l): return [get_phonenumbers(content) for content i...
  • Cython,导入错误(ModuleNotFoundError)

    我有以下目录: pycra |_____crack.py |_____files.py |_____parse.py |_____tools.py crack.py looks like this: import parse import numpy as np import pandas as pd import time import tools import files .... class Crack: ... I'd like to write one specific function of...
公告

《从零开始开发BBS》课程上线啦,快来跟着我一步步搭建属于你的BBS吧。

课程地址:https://www.shiyanlou.com/courses/1436
9折优惠邀请码: ZHwfIjb1

该课程会带领大家一步步的了解并熟悉Go语言开发,如果你是一个Go语言初学者,或者正准备学习Go语言,那么这个课程非常适合你。如果你熟练掌握了本课程中的知识点,相信你就已经入门Go语言开发,并能胜任日常的开发工作了。

如果你在安装部署bbs-go过程中遇到了困难,请不要着急,这里为你准备了一份《bbs-go安装部署帮助》