新聞中心
把Python嵌入C/C++(較低層次嵌入),如果你需要在C程序的實際運用中用Python腳本來傳遞相關參數(shù)時,或想要獲得Python腳本的相關返回值時,要用相關函數(shù)編寫C程序時,你想對Python嵌入C/C++(較低層次嵌入)有更好的了了解的話,可以瀏覽以下的文章,由于Python有自己的數(shù)據(jù)類型,因此在C程序中要使用專門的API對相應的數(shù)據(jù)類型進行操作。常用的函數(shù)有以下幾種。

創(chuàng)新互聯(lián)公司是一家專注網(wǎng)站建設、網(wǎng)絡營銷策劃、成都小程序開發(fā)、電子商務建設、網(wǎng)絡推廣、移動互聯(lián)開發(fā)、研究、服務為一體的技術型公司。公司成立十余年以來,已經(jīng)為千余家成都發(fā)電機維修各業(yè)的企業(yè)公司提供互聯(lián)網(wǎng)服務?,F(xiàn)在,服務的千余家客戶與我們一路同行,見證我們的成長;未來,我們一起分享成功的喜悅。
數(shù)字與字符串處理
在Python/C API中提供了Py_BuildValue()函數(shù)對數(shù)字和字符串進行轉(zhuǎn)換處理,使之變成Python中相應的數(shù)據(jù)類型。其函數(shù)原型如下所示。
PyObject* Py_BuildValue( const char *format, ...)
其參數(shù)含義如下。
· format:格式化字符串,如表8-1所示。#t#
Py_BuildValue()函數(shù)中剩余的參數(shù)即要轉(zhuǎn)換的C語言中的整型、浮點型或者字符串等。其返回值為PyObject型的指針。在C語言中,所有的Python類型都被聲明為PyObject型。
列表操作
在Python/C API中提供了PyList_New()函數(shù)用以創(chuàng)建一個新的Python列表。PyList_New()函數(shù)的返回值為所創(chuàng)建的列表。其函數(shù)原型如下所示。
PyObject* PyList_New( Py_ssize_t len)
其參數(shù)含義如下。
· len:所創(chuàng)建列表的長度。當列表創(chuàng)建以后,可以使用PyList_SetItem()函數(shù)向列表中添加項。其函數(shù)原型如下所示。
- int PyList_SetItem( PyObject *list, Py_ssize_t index,
PyObject *item)
其參數(shù)含義如下。
· list:要添加項的列表。
· index:所添加項的位置索引。
· item:所添加項的值。
同樣可以使用Python/C API中PyList_GetItem()函數(shù)來獲取列表中某項的值。PyList_GetItem()函數(shù)返回項的值。其函數(shù)原型如下所示。
PyObject* PyList_GetItem( PyObject *list, Py_ssize_t index)
其參數(shù)含義如下。
· list:要進行操作的列表。
· index:項的位置索引。
Python嵌入C/C++(較低層次嵌入)的實際操作過程中,Python/C API中提供了與Python中列表操作相對應的函數(shù)。例如列表的append方法對應于PyList_Append()函數(shù)。列表的sort方法對應于PyList_Sort()函數(shù)。列表的reverse方法對應于PyList_Reverse()函數(shù)。其函數(shù)原型分別如下所示。
int PyList_Append( PyObject *list, PyObject *item)
int PyList_Sort( PyObject *list)
int PyList_Reverse( PyObject *list)
對于PyList_Append()函數(shù),其參數(shù)含義如下。
· list:要進行操作的列表。
· item:要參加的項。
對于PyList_Sort()和PyList_Reverse()函數(shù),其參數(shù)含義相同。
· list:要進行操作的列表。
以上就是對Python嵌入C/C++(較低層次嵌入)相關的內(nèi)容的介紹,望你會有所收獲。
文章標題:Python嵌入C/C++(較低層次嵌入)時所需用到的函數(shù)
新聞來源:http://www.5511xx.com/article/djcpgig.html


咨詢
建站咨詢
