python呼叫c的方法

2021-06-03 15:59:41 字數 674 閱讀 8178

python呼叫c的方法研究了三天,今天看了一篇部落格

原來這麼簡單,可能是最簡單的方法了吧。下面整理一下思路

實驗平台:

window xp系統,編譯環境是vs2005

實驗步驟:

步驟1:

在vs2005下編寫c模組

**如下

#include

#include

#include

//#include "python.h"

_declspec(dllexport) int fac(int n)

步驟2:

編譯生成dll庫

步驟3:

在python中載入動態庫並測試。

**如下

def test_py_call_clib():

from ctypes import *

import os

test_other = cdll.loadlibrary(os.getcwd() + '/test_other.dll')

print "load library success."

print test_other.fac(4)

if __name__ == "__main__":

test_py_call_clib()

注意載入動態庫的目錄

參考

C 呼叫Python方法

2.3.通過c 呼叫python指令碼,主要利用python提供的api,實際上,c 主要呼叫的是python的直譯器,而python的直譯器本質就是實現在動態鏈結庫裡的,因此在呼叫前後要進行一些初始化和資源釋放的工作,另外,要呼叫python指令碼裡的函式等等,需要使用python提供的一些特殊的...

Python呼叫C 的幾種方法

參考 參考 前言 caffe2用python來構造tensor,blob,op,workspace等,生成protobuf,傳給後面的c 執行。那執行的整個過程,個人就有點好奇了。本文為僅為python呼叫c 的幾種方法,不涉及任何caffe2的執行機制。大家都知道python的優點是開發效率高,使...

c 呼叫python的方法和坑

1.ironpython 這個東西用.net做了乙個pyhon直譯器,理論上來說這個東西可以做到和c c 呼叫pyhton一樣。實際上東西我沒咋研究,因為只支援py2。坑的一匹 順帶一提,這個東西是乙個非微軟維護的開源專案,用起來沒有巨硬的支援的。2.使用命令列間接呼叫 這是網上實際使用較多的一種方...