新聞中心
如果你想用Python嵌入C/C++ 來進(jìn)行字典操作,你就必須了解在創(chuàng)建字典時(shí)你所需要的相關(guān)函數(shù),例如PyDict_New(),以下的文章就是介紹如何用相關(guān)的函數(shù)來進(jìn)行Python嵌入C/C++ 字典操作的實(shí)際操作步驟。

創(chuàng)新互聯(lián)是一家專業(yè)提供疏勒企業(yè)網(wǎng)站建設(shè),專注與成都做網(wǎng)站、成都網(wǎng)站制作、H5技術(shù)、小程序制作等業(yè)務(wù)。10年已為疏勒眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計(jì)公司優(yōu)惠進(jìn)行中。
在Python/C API中提供了PyDict_New()函數(shù)用以創(chuàng)建一個(gè)新的字典。PyDict_New()函數(shù)返回所創(chuàng)建的字典。其函數(shù)原型如下所示。
PyObject* PyDict_New()
當(dāng)字典創(chuàng)建后,可以使用PyDict_SetItem()函數(shù)和PyDict_SetItemString()函數(shù)向字典中添加項(xiàng)。其函數(shù)原型分別如下所示。
int PyDict_SetItem( PyObject *p, PyObject *key, PyObject *val)
int PyDict_SetItemString( PyObject *p, const char *key, PyObject *val)
其參數(shù)含義如下。#t#
· p:要進(jìn)行操作的字典。
· key:添加項(xiàng)的關(guān)鍵字,對(duì)于PyDict_SetItem()函數(shù)其為PyObject型,對(duì)于PyDict_SetItemString()函數(shù)其為char型。
· val:添加項(xiàng)的值。
使用Python/C API中的PyDict_GetItem()函數(shù)和PyDict_GetItemString()函數(shù)來獲取字典中某項(xiàng)的值。在Python嵌入C/C++ 中的字典操作時(shí),它們都返回項(xiàng)的值。其函數(shù)原型分別如下所示。
PyObject* PyDict_GetItem( PyObject *p, PyObject *key)
PyObject* PyDict_GetItemString( PyObject *p, const char *key)
其參數(shù)含義如下。
· p:要進(jìn)行操作的字典。
· key:添加項(xiàng)的關(guān)鍵字,對(duì)于PyDict_GetItem()函數(shù)其為PyObject型,對(duì)于PyDict_GetItemString()函數(shù)其為char型。
使用Python/C API中的PyDict_DelItem()函數(shù)和PyDict_DelItemString()函數(shù)可以刪除字典中的某一項(xiàng)。其函數(shù)原型如下所示。
int PyDict_DelItem( PyObject *p, PyObject *key)
int PyDict_DelItemString( PyObject *p, char *key)
其參數(shù)含義如下。
· p:要進(jìn)行操作的字典。
· key:添加項(xiàng)的關(guān)鍵字,對(duì)于PyDict_DelItem()函數(shù)其為PyObject型,對(duì)于PyDict_DelItemString()函數(shù)其為char型。
使用Python/C API中的PyDict_Next()函數(shù)可以對(duì)字典進(jìn)行遍歷。其函數(shù)原型如下所示。
int PyDict_Next( PyObject *p, Py_ssize_t *ppos, PyObject **pkey, PyObject **pvalue)
其參數(shù)含義如下。
· p:要進(jìn)行遍歷的字典。
· ppos:字典中項(xiàng)的位置,應(yīng)該被初始化為0。
· pkey:返回字典的關(guān)鍵字。
· pvalue:返回字典的值。
在Python/C API中提供了與Python中字典操作相對(duì)應(yīng)的函數(shù)。例如字典的item方法對(duì)應(yīng)于PyDict_Items()函數(shù)。字典的keys方法對(duì)應(yīng)于PyDict_Keys()函數(shù)。字典的values方法對(duì)應(yīng)于PyDict_Values()函數(shù)。其函數(shù)原型分別如下所示。
PyObject* PyDict_Items( PyObject *p)
PyObject* PyDict_Keys( PyObject *p)
PyObject* PyDict_Values( PyObject *p)
其參數(shù)含義如下。
· p:要進(jìn)行操作的字典。
以上的相關(guān)內(nèi)容就是對(duì)Python嵌入C/C++ 中的字典操作的具體介紹。
當(dāng)前標(biāo)題:Python嵌入C/C++創(chuàng)建字典的實(shí)際操作步驟
轉(zhuǎn)載源于:http://m.5511xx.com/article/dhippgh.html


咨詢
建站咨詢
