91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何理解Python嵌入較低層次中的常用兩種函數

發布時間:2021-10-26 15:55:32 來源:億速云 閱讀:125 作者:柒染 欄目:編程語言

這期內容當中小編將會給大家帶來有關如何理解Python嵌入較低層次中的常用兩種函數,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

如果需要在C程序中用Python腳本傳遞參數,或者獲得Python腳本的返回值,則要使用更多的函數來編寫C程序。由于Python有自己的數據類型,因此在C程序中要使用專門的API對相應的數據類型進行操作。常用的函數有以下幾種。

1.數字與字符串處理

在Python/C API中提供了Py_BuildValue()函數對數字和字符串進行轉換處理,使之變成Python中相應的數據類型。其函數原型如下所示。

PyObject* Py_BuildValue( const char *format, ...)

其參數含義如下。

· format:格式化字符串,如表8-1所示。

Py_BuildValue()

函數中剩余的參數即要轉換的C語言中的整型、浮點型或者字符串等。其返回值為PyObject型的指針。在C語言中,所有的Python類型都被聲明為PyObject型。

2.列表操作

在Python/C API中提供了PyList_New()函數用以創建一個新的Python列表。PyList_New()函數的返回值為所創建的列表。其函數原型如下所示。

PyObject* PyList_New( Py_ssize_t len)

其參數含義如下。

· len:所創建列表的長度。

當列表創建以后,可以使用PyList_SetItem()函數向列表中添加項。其函數原型如下所示。

  1. int PyList_SetItem( PyObject *list,
     Py_ssize_t index, PyObject *item) 

其參數含義如下。

· list:要添加項的列表。

· index:所添加項的位置索引。

· item:所添加項的值。

同樣可以使用Python/C API中PyList_GetItem()函數來獲取列表中某項的值。PyList_GetItem()函數返回項的值。其函數原型如下所示。

  1. PyObject* PyList_GetItem
    ( PyObject *list, Py_ssize_t index) 

上述就是小編為大家分享的如何理解Python嵌入較低層次中的常用兩種函數了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

潞西市| 涪陵区| 余庆县| 建昌县| 陕西省| 石城县| 沂南县| 涪陵区| 泸州市| 朔州市| 湘乡市| 新宁县| 龙海市| 扬州市| 西青区| 江孜县| 上思县| 柳林县| 高雄市| 长沙县| 广平县| 延津县| 鸡东县| 班戈县| 双城市| 镇平县| 威信县| 延边| 正蓝旗| 盖州市| 巴东县| 会东县| 乌审旗| 永康市| 洪湖市| 崇明县| 于都县| 运城市| 麦盖提县| 昭苏县| 内江市|