问题标签 [cythonize]
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.
cython - py3.6.4 下的 cythonize 无法将 'basestring' 对象隐式转换为字节。这不是便携式的
此代码片段在 python 3.6.4 下运行良好,但在 .pyx 文件中存在时会触发可移植性问题。我可以使用一些帮助来确定如何在 Cython 中最好地格式化 python 3.5.1+ 字节。
编辑:根据 DavidW 的评论改变这一点。
以下在 ipython 下的 python 3.6.4 中工作
正如所希望的那样:
使用 cython 对代码的唯一更改是函数名称、声明的返回类型和声明两个变量。
其次是:
结果是:
-djv
cython - Cython 无法从 cimported 模块中找到声明的函数
系统:Mac OS 10.12.6。Python:来自 Anconda3 的 Python 3.5.2。赛通==0.28
我正在尝试为静态 c++ 库编写包装器。这是头文件的一部分。
这是pxd
Cython 文件的一部分。
我pyx
为测试编写了一个简单的文件。
安装文件
运行python setup.py build_ext --inplace
。
PS:我已经成功地用 Xcode 完成了这个,只有 c 代码。
macos - 如何在 Cython 中链接 Mac OS 框架
如何在 Cython 中链接 Mac OS 框架?
我失败了
错误
将完整路径添加到框架也不起作用。
python - Cython c++ 模块,构造函数多次调用
我正在尝试使用 Cython 将我的 c++ 类包装到 python 中。我能够创建so文件并在python中导入,但是我的c++类的构造函数被多次调用。
这是我到目前为止所做的。
文件:DBReader.h
文件:DBReader.cxx
文件:dbreader.pyx
文件:setup.py
运行后setup.py build_ext --inplace
创建 dbreader.so 文件。而且我可以在python中导入。但正如您在下面看到的:Hello 被打印三次。
python - 如何使 Python 模块可共享?
我们有一个基于 python 的模块,我们希望通过创建一个 linux 系统可以理解的编译副本(即.so文件)来分发给我们的客户
我们已经评估了 cython,它很容易做到这一点,但我们看到它创建的 .so 文件与 .pyx/.py 文件一样多,但我们想为完整的包创建一个 uber .so 文件。从某种意义上说,我们希望巧妙地做到这一点,如果我们将来向其他模块添加依赖项,uber 编译的文件应该具有所有依赖项。
有什么建议,我们如何才能巧妙地做到这一点?
python-3.x - ImportError:没有名为 util 的模块
我的目录结构是这样的:
这里,util.pyd 和 high.pyd 文件在 cython 中。
此外,util.pyd 是 high.pyd 的父级。
这意味着它使用 util.pyd 类作为其类的对象。然后 main_file.py 从 util.pyd 和 high.pyd 中导入类。
我面临的问题是:
在 main_file.py 中,从 Util.pyd 中正确导入了 class,但是从 high.pyd 中导入 class,却找不到 util。
python - Returning Object Pointer: 'Cannot convert 'Coordinate *' to Python object'
I'm currently trying to cythonize my c++ classes to be usabe in python and I startet with a simple class of mine, but I'm stuck with returning a pointer. My apttempt to solve this problem was to add a copy-constructor and to return the Python version of the C++ class but without any success.
I get the following error:
here are my files
coordinate.h
coordinate.cpp
coordinate.pxy
cython - 如何在 Cython 的另一个进程中授予对对象的只读(非复制)访问权限?
如何将一个进程中的对象的只读(非复制)访问权限授予另一个进程?
例如,在下图中,如何授予Process 2
和Process 3
访问 中的Tasks
类Process 1
?
Process 1
是唯一一个将写入类的进程,Tasks
维护关于哪些任务已被处理等的任何状态并不重要。
我认为这个任务可能涉及使用指针?Cython 的文档简要介绍了并行性。
如何授予对其中的类Process 2
的Process 3
只读、非复制访问权限?Tasks
Process 1
cython - 如何使用 Cython(而不是与 Python 交互)在另一个进程中运行函数?[包含 Python 代码示例]
在 cython 中复制以下行为的最佳方法是什么(无需与 Python 交互)?假设将传递给新进程的函数是一个cdef
函数。
如何使用 Cython(不与 Python 交互)在另一个进程中运行函数?
cython - Cythonize 函数在扩展名中包含根文件夹
问题
我有一个看起来像这样的项目结构:
我setup.py
用于cythonize
编译.pyx
文件的用途:
它主要工作,但是当我创建一个二进制轮子(使用python setup.py build_ext bdist_wheel clean --all
)时,我的轮子文件具有以下结构:
这不好,因为我希望在mylib
根文件夹中也有已编译的 cython 模块。
可能的原因
稍微调查一下,问题似乎出在从cythonize()
函数生成的扩展名上,这些扩展名都以 开头t_src
,例如:
解决方法
如果我实际上在cythonize()
函数之前运行该setup()
函数并手动从扩展名中删除"t_src."
字符串,那么我的轮子里面mylib
的所有东西都符合预期:
这是某种预期的行为还是我做错了什么?这可能是什么原因造成的?现在这个解决方法可以,但我想知道解决这个问题的正确方法。
谢谢!