gpt4 book ai didi

python - Numpy ctypes data_as 指针数组出现意外结果

转载 作者:行者123 更新时间:2023-12-01 01:16:54 25 4
gpt4 key购买 nike

当我将两个 Numpy 数组表示为 Ctypes 指针时,我得到了意外的结果。我创建了一个最小的示例来重现我遇到的问题:

import numpy as np
from ctypes import c_float, POINTER

c_float_p = POINTER(c_float)

a = np.array([1], dtype=c_float).ctypes.data_as(c_float_p)
b = np.array([2], dtype=c_float).ctypes.data_as(c_float_p)

print('a: {}, b: {}'.format(a.contents, b.contents))

当我运行它时,我得到以下输出:

a: c_float(2.0), b: c_float(2.0)

显然第一个数组的内容已被第二个数组的内容覆盖。因此,这两个指针似乎指向同一个位置。如何避免这种情况发生?

注意:我使用的是 Python 3.6、Numpy 1.15.4。

最佳答案

事实证明,当我将 Numpy 更新到 1.16.0 时,上面的示例按预期运行。

关于python - Numpy ctypes data_as 指针数组出现意外结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54260268/

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