问题标签 [cython]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Python Distutils
由于Distutils的严格版本编号类,我无法安装cython。例如 binutils-2.18.50-20080109-2.tar.gz 不能与MinGW一起用于安装 cython。源代码文档说“这个版本编号系统的基本原理将在 distutils 文档中解释。” 我找不到理由。
我的问题:这个版本编号系统的基本原理是什么?
python - 扩展 python - swig,而不是 swig 或 Cython
我在我的 python 代码中发现了瓶颈,玩弄了 Psycho 等。然后决定编写 ac/c++ 扩展来提高性能。
在 swig 的帮助下,您几乎不需要关心争论等。一切正常。
现在我的问题是:swig 创建了一个相当大的 py 文件,它在调用实际的 .pyd 或 .so 代码之前会执行大量“检查”和“PySwigObject”。
如果你手写这个文件或者让 swig 来做,你们中的任何人是否有任何经验是否可以获得更多的性能。
python - Cython 中的字符串操作
我有一些代码可以执行一些非常占用 CPU 的字符串操作,并且我正在寻找提高性能的方法。
(编辑:我正在做一些事情,比如找到最长的公共子字符串,运行许多可能更好地表示为 c 中的状态机的正则表达式,从 HTML 中剥离注释,诸如此类。)
在听到很多关于它的好消息后,我目前正在考虑将一些代码移植到Cython 。然而,Cython 的主要关注点似乎是数值计算,并且几乎没有记录使用字符串。
Unicode 也可能是一个大问题。
我的问题是:
- 我什至应该为字符串的东西烦恼 Cython 吗?有没有人在 cython 中有这种类型的处理经验并可以分享?
- 我在 Cython 文档中遗漏了什么吗?有谁知道有关在 Cython 中使用字符串的教程/参考/文档?
c++ - 来自 cython wiki 的 Hello World 不起作用
我正在尝试从 Cython 学习本教程:http://docs.cython.org/docs/tutorial.html#the-basics-of-cython ,但我遇到了问题。
文件非常简单。我有一个 helloworld.pyx:
和一个 setup.py:
我用标准命令编译它:
我收到以下错误:
我从 Ubuntu 9.04 存储库安装了 python 和 cython。我不明白为什么编译器找不到 Python.h。
我试着做:
然后使用 gcc 手动编译结果:
并得到了相同的错误信息。
有什么线索吗?
python - Cython 和 numpy 速度
我在我的 python 程序中使用 cython 进行相关性计算。我有两个音频数据集,我需要知道它们之间的时间差。第二组根据开始时间进行切割,然后滑过第一组。有两个 for 循环:一个滑动集合,内部循环计算该点的相关性。这种方法效果很好,而且足够准确。
问题是,对于纯 python,这需要超过一分钟。使用我的 cython 代码,大约需要 17 秒。这还是太多了。您是否有任何提示如何加速此代码:
python - Cython/Pyrex 生成的 Python 扩展是线程安全的吗?
如果没有,有没有办法通过某种方式编程来保证线程安全?
澄清一下,在谈论“线程安全”时,我指的是 Python 线程,而不是操作系统级线程。
c++ - 在 Cython 中做列表/字典的惯用方式?
我的问题:我发现使用 STL 映射和向量使用原始 C++ 处理大型数据集通常比使用 Cython 快得多(并且内存占用更少)。
我认为这种速度损失的部分原因是由于使用了 Python 列表和字典,并且可能有一些技巧可以在 Cython 中使用较少的数据结构。例如,此页面 ( http://wiki.cython.org/tutorials/numpy ) 展示了如何通过预定义 ND 数组的大小和类型在 Cython 中非常快速地制作 numpy 数组。
问题:有没有办法对列表/字典做类似的事情,例如通过大致说明您希望其中有多少元素或(键,值)对?也就是说,是否有一种惯用的方式将列表/字典转换为 Cython 中的(快速)数据结构?
如果不是,我想我只需要用 C++ 编写它并包装在 Cython 导入中。
python - Noob-Ready Cython 教程
我知道一堆脚本语言(python、ruby、lua、php),但我不知道任何编译语言,如 C/C++,我想尝试使用 cython 加速一些 python 代码,这本质上是一个 python - > C 编译器,旨在为 python 创建 C 扩展。基本上,您使用更严格的 python 版本进行编码,该版本编译为 C -> 本机代码。
这就是问题所在,我不知道 C,但是 cython 文档是针对那些显然已经知道 C 的人(没有解释,只介绍),对我没有帮助,我需要知道是否有任何好的针对 python 程序员的 cython 教程,或者如果我在学习 Cython 之前必须学习 C。
请记住,我是一个称职的 python 程序员,我宁愿从我已经擅长的语言的角度学习 cython,而不是为了学习 cython 而学习一门全新的语言。
1) 请不要推荐 psyco
编辑:任何有助于理解官方 cython 文档的信息都是有用的信息