溫馨提示×

溫馨提示×

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

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

Python中怎么嵌入C

發布時間:2021-07-10 15:54:24 來源:億速云 閱讀:289 作者:Leah 欄目:編程語言

本篇文章為大家展示了Python中怎么嵌入C,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

在VC++ 6.0中新建一個名為“EmbPython”的空“Win32 Console Application”工程。向其添加如下所示的“EmbPython.c”文件。

#include <stdio.h> #include <Python.h> int main(int argc, char* argv[])  {   PyObject *modulename, *module, *dic, *func, *args, *rel, *list;  char *funcname1 = "sum";  char *funcname2 = "strsplit";  int i;  Py_ssize_t s;

printf("-==在C中嵌入Python==-\n");/* Python解釋器的初始化*/

Py_Initialize();   if(!Py_IsInitialized())   {   printf("初始化失敗!");   return -1;   }

/* 導入Python模塊,并檢驗是否正確導入 */

modulename = Py_BuildValue("s", "pytest");   module = PyImport_Import(modulename);   if(!module)   {   printf("導入pytest失敗!");   return -1;   }

/* 獲得模塊中函數并檢驗其有效性 */

dic = PyModule_GetDict(module);   if(!dic)  {  printf("錯誤!\n");  return -1;   }

/* 獲得sum函數地址并驗證 */

func = PyDict_GetItemString(dic,funcname1);   if(!PyCallable_Check(func))   {

printf("不能找到函數 %s",funcname1);

return -1;   }

/* 構建列表 */

list = PyList_New(5);

printf("使用Python中的sum函數求解下列數之和\n");

for (i = 0; i < 5; i++)  {  printf("%d\t",i);  PyList_SetItem(list,i,Py_BuildValue("i",i));  }  printf("\n");

/* 構建sum函數的參數元組*/

上述內容就是Python中怎么嵌入C,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

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

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女