我想從C傳遞一個數組(或二維數組)的列表,例如[[1,2,3],[4,5,6]]
,它將計算並返回一個列表。嵌入code需要什麼樣的修改才能實現?要執行的Python腳本如下:將Python嵌入到C中:傳遞一個二維數組並返回一個列表
abc.py
import math
def xyz(size,wss):
result=[0 for i in range(size)]
for i in range(size):
wss_mag=math.sqrt(wss[i][0]*wss[i][0]+wss[i][1]*wss[i][1]+wss[i][2]*wss[i][2])
result[i]=1/wss_mag
return result
這裏大小1D陣列中WSS數(例如,2箇中的情況下wss=[[1,2,3],[4,5,6]]
)的問題是比不同建議重複的意義上,它必須將列表作爲一維數組返回給C.
你是什麼意思的「列表陣列」?您不能將C數組放入Python列表中。 – user2357112
我認爲一個二維數組(以C語言來說)(它將像Python中的列表列表)更合適。你可以參考我給出的我想要的輸入的例子。 – suzaku
[如何將二維數組從C傳遞到Python]可能的副本(http://stackoverflow.com/questions/30330279/how-to-pass-two-dimensional-array-from-c-to-python) – DavidW