与相互交互调用实例解析的
PYTHON 与C相互交互调用实例解析
使用前工具:
Vc++编译器
Python 解释器
如没有装VC,可以去微软站下一个C++的编译器,地址如下:
装完后,在环境变量中把PYTHON的INCLUDE和LIBS分别加入下面2个宏
INCLUDE
证监会发言人张晓军13日表示 LIB
1、C中调用PYTHON
#include Python.h
int main(int argc, char *argv[])
{
Py_Initialize();
PyRun_SimpleString(\"from time import time,ctime\\n\"
\"print \'Today is\',ctime(time())\\n\");
Py_Finalize();
return 0;
}
直接用CL 文件名 编译就是
2、用C生成DLL,用PYTHON调用
C代码:如FOO.C
#include Python.h
/* Define the method table. */
static PyObject *foo_bar(PyObject *self, PyObject *args);
static PyMethodDef FooMethods[] = {
{\"bar\", foo_bar, METH_VARARGS},
{NULL, NULL}
};
/* Here\'s the initialization function. We don\'t need to do anything
for our own needs, but Python needs that method table. */
void initfoo()
{
(void) Py_InitModule(\"foo\", FooMethods);
}
/* Finally, let\'s do something ... involved ... as an example function. */
static PyObject *foo_bar(PyObject *self, PyObject *args)
{
char *string;
int len;
if (!PyArg_ParseTuple(args, \"s\", string))
return NULL;
len = strlen(string);
return Py_BuildValue(\"i\", len);
}
C定义文件:f
EXPORTS
initfoo
编译生成l
Cl -c foo.c;
link j /dll /def:f /OUT:l
在PYTHON中调用:
Import foo
Dir(foo)
…
即可以看到结果:
import foo
dir(foo)
[\'__doc__\', \'__file__\', \'__name__\', \'bar\']
^Z
成都哪家医院看男科喉咙干痒咳嗽是什么原因
骨关节炎吃什么药
- 上一页:框架发呢
- 下一页:与程序的简单实例对比
-
被喷“意淫谷爱凌”!有Rapper被网暴后表示
什么情况。 有Rapper再次登上了风口浪尖。 这次是远古时代MC约拿。 他因为他...
2024-12-16
-
调查|“双减”一周年,教培机构主导,仍有老师私下攒班
北京日报浏览器 | 摄影记者 莫凡 宗媛媛“双减”新政策落地即将满一周年,...
2024-11-21
-
78官测:threezero机甲周边系列 PREMIUM 电影 变形金刚 飞鹰 擎天柱
78官测:threezero机兵沿线系列 PREMIUM 片子 变形金刚 飞龙 破坏者 评论转自78D...
2024-11-09
-
2022年,十二生肖阳历7月份运势南北向!
2022年,十二如意阴历7年初份吉凶过渡到! 文/易鑫 7年初吉凶丁未——小暑...
2024-11-08
-
2022年全球各地全球性嵌入式展会排期计划表
德国美因茨软件系统展览馆会embedded world 展览馆整整:2022年06翌年21日 ~ 06翌...
2024-11-06
-
重磅!墨尔本顶级私校酝酿新校,学费低很多!华人妈亲述4岁琪一波三折入学过程
...
2024-11-04