gpt4 book ai didi

python - 将整数数组传递给函数时出现 Cython 错误 : Cannot convert Python object to type 'int *' error,

转载 作者:行者123 更新时间:2023-11-28 20:48:55 26 4
gpt4 key购买 nike

我正在尝试将整数数组传递给 Cython 中的函数,但我不明白为什么会出现标题中提到的错误。

我正在尝试做的示例代码如下:

cpdef foo(int *table):
for i in range(10):
table[i] = i

cdef int *temp=<int *>malloc(10*sizeof(int))
foo(temp)

for i in range(10):
print temp[i]

对于如何将数组正确传递给函数的任何指示,我将不胜感激。谢谢。

最佳答案

这里的问题是函数是 cpdef - 这意味着它可以从 C 和 Python 代码调用,并且意味着所有参数都必须是 Python 对象(否则如何从 Python 调用它? )

改为将其声明为 cdef

关于python - 将整数数组传递给函数时出现 Cython 错误 : Cannot convert Python object to type 'int *' error,,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15844028/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com