真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

數(shù)組傳入函數(shù)python 數(shù)組傳入函數(shù)

python中怎么把數(shù)組作為函數(shù)的輸入

findAt函數(shù)可以使用可變參數(shù)*args,即findAt(*args)。同樣還是將幾十個(gè)坐標(biāo)放到a列表中,然后直接調(diào)用findAt(*a)

創(chuàng)新互聯(lián)主要從事網(wǎng)站建設(shè)、做網(wǎng)站、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)江岸,10多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):028-86922220

C++調(diào)用時(shí)python時(shí),如何傳入數(shù)組做為參數(shù)

題主,你基本操作沒(méi)什么問(wèn)題,有幾個(gè)小地方要修改一下,修改如下:

你的源碼:

PyObject* list = PyList_New(3);????

for (size_t i = 0; i 3; i++)

PyList_Append(list, Py_BuildValue("i", i));

PyEval_CallObject(pFunc, list);

--------------------------------------------------------------------------------------

修改后,應(yīng)該是這樣

PyObject*?pArgs?=?NULL;

PyObject*?list?=?PyList_New(0);????//3改成0

pArgs?=?PyTuple_New(1);?????????????????//定義1個(gè)參數(shù)

for?(size_t?i?=?0;?i??3;?i++)

PyList_Append(list,?Py_BuildValue("i",?i));?//這樣才能用Append,

PyTuple_SetItem(pArgs,?0,?list);????//將列表賦給參數(shù)

PyEval_CallObject(pFunc,?list);????//傳入?yún)?shù),調(diào)用函數(shù)

注意事項(xiàng):PyList_New(0)?初始化0的時(shí)候,應(yīng)該用Append初始化

PyList_New(3)?初始化3個(gè)時(shí)候,應(yīng)該用SetItem初始化

如果用Append的話,會(huì)出現(xiàn)[NULL,?NULL,?NULL]的情況

我在給一個(gè)完整的:

Python :(hello.py)

def?TestList(nlist):

print(nlist)

return

一般參數(shù)都是已元組形式傳入的

Py_Initialize();

PyRun_SimpleString("import?sys");???

PyRun_SimpleString("sys.path.append('./')");??

PyObject*?pModule?=NULL;

PyObject*?pList?=?NULL;

PyObject*?pFunc?=?NULL;

PyObject*?pArgs?=?NULL;

pModule?=?PyImport_ImportModule("hello");

pFunc?=?PyObject_GetAttrString(pModule,?"TestList");

pArgs?=?PyTuple_New(1);

pList?=?PyList_New(0);

for?(int?i?=?0;?i??3;?i++)

{

PyList_Append(pList,?Py_BuildValue("i",?i));

}

PyTuple_SetItem(pArgs,?0,?pList);

pRet?=?PyEval_CallObject(pFunc,?pArgs);

Py_Finalize();

最后輸出的:[0, 1, 2]

python如何傳遞數(shù)組給自定義函數(shù),不要循環(huán)語(yǔ)句

void fun(a,10) 將數(shù)組a的首地址賦給指針s

{

int i; i 計(jì)的是這數(shù)組中有幾個(gè)字母

for (;*s;s++) 每循環(huán)一次,s后移一位,判斷結(jié)束循環(huán)的條件s指向的內(nèi)容為" \0 "

{

if(*s='a'*s='z'||*s='A'*s='Z')

i++;

}


網(wǎng)頁(yè)標(biāo)題:數(shù)組傳入函數(shù)python 數(shù)組傳入函數(shù)
分享鏈接:http://weahome.cn/article/doeocis.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部