簡體   English   中英

填充作為參數傳遞給C函數的Python列表

[英]populate Python list passed as argument to C function

我正在使用C編寫Python擴展。當列表作為參數傳遞並且C函數不返回列表而是一個不同的PyObject*時,如何在C中填充一個空列表。

b=[]
a = c.populate(data=b)
print b

輸出:

[1, 2, 3]

我感謝您的幫助。 謝謝。

您可以使用PyList_Append()函數將單個元素添加到現有的Python list對象中:

在清單列表的末尾追加對象項目 如果成功返回0 ;否則返回0 返回-1並設置失敗的異常。 類似於list.append(item)

或者,使用PyList_SetSlice()將列表擴展為另一個list對象中的項目:

列表的一部分設置在itemlist的 之間。 類似於list[low:high] = itemlist itemlist可以為NULL ,表示分配了一個空列表(切片刪除)。 成功返回0 ,失敗返回-1 不支持負索引,例如從Python切片時。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM