【发布时间】:2018-08-01 12:33:39
【问题描述】:
我有一些格式的数据:
data = [[1,1,1],[2,2,2],[3,3,3]]
如何通过 ctypes 将其传递给 C++?
我可以像这样单独传递每个列表:
import ctypes
temp1 = [1,1,1]
temp2 = [2,2,2]
temp3 = [3,3,3]
list1 = (ctypes.c_int * 3)(*temp1) #NO IDEA WHAT THE * MEANS
list2 = (ctypes.c_int * 3)(*temp2)
list3 = (ctypes.c_int * 3)(*temp3)
但在那之后,如果我尝试将所有这些列表附加到“数据”中......
data.append(list1)
data.append(list2)
data.append(list3)
data_final = (ctypes.?????? * 3)(*data)
我应该放入什么类型的?????谢谢
【问题讨论】:
-
*表示解包,所以list1 = (ctypes.c_int * 3)(*temp1)扩展为list1 = (ctypes.c_int * 3)(1, 1, 1)