C C 呼叫Python程式的List列表介面

2021-08-31 16:14:27 字數 2042 閱讀 6587

該介面檔案為屬於python2.7include/python2.7/listobject.h。這裡的**刪除了原有的注釋。在linux中,可以使用如下的命令找到相關的檔案:

$ sudo

find / |

grep listobject.h |

grep python2.7

關於python3的版本,不在此處列舉。

#ifndef py_listobject_h

#define py_listobject_h

#ifdef __cplusplus

extern

"c" pylistobject;

pyapi_data

(pytypeobject) pylist_type;

#define pylist_check(op) \

pytype_fastsubclass(py_type(op), py_tpflags_list_subclass)

#define pylist_checkexact(op) (py_type(op) == &pylist_type)

pyapi_func

(pyobject *

)pylist_new

(py_ssize_t size)

;pyapi_func

(py_ssize_t)

pylist_size

(pyobject *);

pyapi_func

(pyobject *

)pylist_getitem

(pyobject *

, py_ssize_t)

;pyapi_func

(int

)pylist_setitem

(pyobject *

, py_ssize_t, pyobject *);

pyapi_func

(int

)pylist_insert

(pyobject *

, py_ssize_t, pyobject *);

pyapi_func

(int

)(pyobject *

, pyobject *);

pyapi_func

(pyobject *

)pylist_getslice

(pyobject *

, py_ssize_t, py_ssize_t)

;pyapi_func

(int

)pylist_setslice

(pyobject *

, py_ssize_t, py_ssize_t, pyobject *);

pyapi_func

(int

)pylist_sort

(pyobject *);

pyapi_func

(int

)pylist_reverse

(pyobject *);

pyapi_func

(pyobject *

)pylist_astuple

(pyobject *);

pyapi_func

(pyobject *

)_pylist_extend

(pylistobject *

, pyobject *);

#define pylist_get_item(op, i) (((pylistobject *)(op))->ob_item[i])

#define pylist_set_item(op, i, v) (((pylistobject *)(op))->ob_item[i] = (v))

#define pylist_get_size(op) py_size(op)

#ifdef __cplusplus

}#endif

#endif

/* !py_listobject_h */

C C 呼叫MLu的入門程式

mlu是程式和lu核心庫之間的乙個介面庫,mlu會自動載入lu核心庫和動態載入多個lu擴充套件庫,簡化了lu系統的使用 mlu可對lu源程式進行模組化編譯,能夠編譯執行具有固定格式的源程式 字串表示式 源程式中可以使用c 風格的注釋。此外,mlu還提供了多個執行緒互斥地訪問lu資源的功能 提供了lu...

python 呼叫 C C 程式設計

p1 首先,先用c寫乙個簡單的函式 show.c include void showstring 這個函式是乙個最簡單的helloworld函式,幾乎所有程式語言教材都會以她作為第乙個例子 跑題了。我們需要做的是在乙個python指令碼中呼叫這個函式 show.py usr bin env pyth...

python 呼叫 C C 詳解

接下來將簡單介紹python如何呼叫c和c 包括呼叫整型,陣列等情況。c函式返回整型int c test.c include include int func int a,int b 編譯成so包 gcc o testpycll 64.so shared fpic test.cpython impo...