Python中文
首页
教程
问答
标签
搜索
登录
注册
如何将Python数组转换为Cython数组?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有一个用普通Python创建的浮点值数组,我想把它传递给一个cython函数,该函数面向底层C函数。 C函数要求将数组作为浮动指针传递,如下所示:</p> <pre><code>void setOverlays(const float * verts); </code></pre> <p>cython包装看起来像这样:</p> <pre><code>def set_overlays(verts): setOverlays(verts) </code></pre> <p>我怎样才能把顶点变成一个cython数组? 我想这可能管用:</p> <pre><code>cdef float * cVerts = [v for v in verts] </code></pre> <p>但不幸的是,生成的值是一个Python对象,在这种情况下,自动转换不起作用。</p> <p>ctypes中的等效表达式(有效)是:</p> <pre><code>cVerts = (c_float * len(verts))() for i in range(len(verts)): cVerts[i] = verts[i] setOverlays(cast(byteref(cVerts), POINTER(c_float))) </code></pre> <p>我也在努力实现同样的目标,但是在赛顿</p> <p>提前谢谢!</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>签出<a href="http://docs.cython.org/src/userguide/memoryviews.html" rel="nofollow">http://docs.cython.org/src/userguide/memoryviews.html</a>。看起来它还提供了如何利用Python内置的<code>array</code>模块以及<code>numpy</code>的提示。</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
为什么我的神经网络模型的准确性不能在这个训练集上得到提高?
7 回答
为什么我的神经网络模型的权重变化不大?
2 回答
为什么我的神经网络的成本不断增加?
5 回答
为什么我的神经网络的输入pickle文件是19GB?
1 回答
为什么我的神经网络给属性错误?“非类型”对象没有属性“形状”
10 回答
为什么我的神经网络训练这么慢?
3 回答
为什么我的神经网络输出错误?
10 回答
为什么我的神经网络预测适用于MNIST手绘图像时是正确的,而适用于我自己的手绘图像时是不正确的?
2 回答
为什么我的神经网络验证精度比我的训练精度高,而且它们都是常数?
9 回答
为什么我的私人用户间聊天会显示在其他用户的聊天档案中?
7 回答
为什么我的积分的绝对误差估计值大于积分(使用scipy.integrate.nqad)?
2 回答
为什么我的积层回归器得分比它的组件差?
1 回答
为什么我的移动方法不起作用?
10 回答
为什么我的稀疏张量不能转换成张量
10 回答
为什么我的稀疏张量不能转换成张量?
6 回答
为什么我的程序“停止”了?
5 回答
为什么我的程序一直试图占用所有可用的CPU
2 回答
为什么我的程序不使用指定的代理
8 回答
为什么我的程序不工作(python帮助中的反向函数)?
7 回答
为什么我的程序不工作时,我使用多处理模块
6 回答