循环遍历生成器的循环

2024-06-28 19:48:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我的Python代码有很多循环,它们使用Python生成器中的数据。有些还重新生成处理过的数据。这是一个瓶颈,我想加快这个部分,并考虑使用Cython。在

建议的处理发电机和产量的方法是什么。我想

  • 将Python生成器转换为不带数据副本的Cython
  • 使Cythonfor循环使用Python生成器生成的数据
  • 像生成器一样生成数据

我想这是一个足够常见的用例,推荐的方法是什么。在


Tags: 数据方法代码副本用例建议cython发电机
1条回答
网友
1楼 · 发布于 2024-06-28 19:48:01

一些建议:

  • Cython支持现成的生成器,因此您应该尝试将Python代码与生成器一起传递给cython,然后看看能得到什么样的加速。在
  • 下一步是向循环中添加尽可能多的静态类型信息,以加快生成器所做的工作。在
  • Python生成器很酷,但是如果性能很重要,它们并不是最快的方法。最好将瓶颈转换为使用连续数组。在
  • 查一下Cyyvien的备忘录。在
  • 您还可以使用Cython和C++ STD::向量和其他高性能容器对象。在

我们需要更多关于您的目标和限制的信息,以便在这里提供更多帮助。一个简单的例子会很有帮助。在

相关问题 更多 >