C、C++中如何成功嵌入python
2016-11-14 22:01
633 查看
修改lib文件名称,拷贝修改C:\Python27\libs目录下原来的python27.lib为python27_d.lib
包含头文件在C:\Python27\include目录下
包含lib文件
调用64位lib库需要修改版本
最简单的代码:
以main.c 调用 hellWorld.py 函数为例进行说明。
helloWorld.py 的内容很简单只是定义了hello函数然后输出“Hello World”
main.c 函数也比较简单,主要是初始化python,以及导入python的模块等
里面的Python_Initialize()主要是初始化python解释器。
Py_SimpleString("import sys")相当于在python中的import sys语句。
Py_SimpleString("sys.path.append('./')")是将搜索路径设置为当前目录。
Py_ImportModule("helloWorld")是利用导入文件函数将helloWorld.py函数导入。
PyObject_GetAttrString(pModule, "hello")是在pyton引用模块helloWorld.py中查找hello函数。
接着调用PyEval_CallObject(pFunc, NULL)调用hello函数。
最后是清理python环境释放资源。
http://blog.csdn.net/yelbosh/article/details/7495555
http://blog.csdn.net/taiyang1987912/article/details/44779719
http://blog.chinaunix.net/uid-20564848-id-73553.html
http://www.2cto.com/kf/201411/352264.html
http://www.cnblogs.com/linxr/archive/2011/07/22/2113843.html
包含头文件在C:\Python27\include目录下
包含lib文件
调用64位lib库需要修改版本
最简单的代码:
1 #include "stdafx.h" 2 #include "python.h" 3 4 5 int _tmain(int argc, _TCHAR* argv[]) 6 { 7 Py_Initialize(); 8 PyRun_SimpleString("print 'hello world!' "); 9 Py_Finalize(); 10 getchar(); 11 return 0; 12 }
以main.c 调用 hellWorld.py 函数为例进行说明。
helloWorld.py 的内容很简单只是定义了hello函数然后输出“Hello World”
main.c 函数也比较简单,主要是初始化python,以及导入python的模块等
里面的Python_Initialize()主要是初始化python解释器。
Py_SimpleString("import sys")相当于在python中的import sys语句。
Py_SimpleString("sys.path.append('./')")是将搜索路径设置为当前目录。
Py_ImportModule("helloWorld")是利用导入文件函数将helloWorld.py函数导入。
PyObject_GetAttrString(pModule, "hello")是在pyton引用模块helloWorld.py中查找hello函数。
接着调用PyEval_CallObject(pFunc, NULL)调用hello函数。
最后是清理python环境释放资源。
http://blog.csdn.net/yelbosh/article/details/7495555
http://blog.csdn.net/taiyang1987912/article/details/44779719
http://blog.chinaunix.net/uid-20564848-id-73553.html
http://www.2cto.com/kf/201411/352264.html
http://www.cnblogs.com/linxr/archive/2011/07/22/2113843.html
相关文章推荐
- C中如何成功嵌入python
- python嵌入C++------ boost.python如何在C++中调用含有不定长参数tuple变量和关键字参数dict变量的函数
- 如何打包Python脚本使用的Python库[C++嵌入Python]
- 成功的把Python嵌入到VC2008和VC6.0中
- c++中嵌入perl,python
- C++嵌入Python最简例
- C++ 扩展和嵌入 Python
- [ZT]C++ 扩展和嵌入 Python
- C++ 扩展和嵌入 Python
- C++ 扩展和嵌入 Python
- C++ 扩展和嵌入 Python
- 如何让python调用C和C++代码
- Python嵌入C++(1)
- C++扩展和嵌入Python应用
- 如何让python调用C和C++代码
- C++ 扩展和嵌入 Python
- [ZT]C++ 扩展和嵌入 Python
- [ZT]C++ 扩展和嵌入 Python
- c++中嵌入perl,python
- 用boost.python为python写c/c++扩展曲折配置最终成功历程