C++调用Python方法与例子

1.以Python2.7为例,安装路目录如C:\Python27\include下面有C++需要的头文件Python.h等,所以需要把这个目录配置到VS工程属性include附加目录。

2.链接器需要python27_d.lib或者python27.lib,一般我们下载的python都是64位release版,没有python27_d.lib,所以我们在VS工程链接属性下附加python27.lib和附加目录:C:\Python27\libs。

3.代码:

#include "Python.h"

int _tmain(int argc, _TCHAR* argv[])
{

Py_Initialize();         //调用python api之前要初始化

        //这里可放任何python api函数,比如下面这个python的print

PyRun_SimpleString("print '这句话是由Python API输出的,不是C++输出的!'");

Py_Finalize(); //调用完python api别忘记释放资源
        system("Pause");
return 0;

}

4.编译可能通不过,有以下两点原因:

第一,可能报找不到python27_d.lib,如果是这样,修改如下:

修改C:\Python27\include\pyconfig.h,找到

#ifdef _DEBUG
//# define Py_DEBUG       //注视掉即可

#endif

# ifdef _DEBUG
//# pragma comment(lib,"python27_d.lib")
# pragma comment(lib,"python27.lib")    //这里改成release版的
# else
# pragma comment(lib,"python27.lib")

# endif /* _DEBUG */


修改C:\Python27\include\object.h如下:

#if defined(Py_DEBUG) && !defined(Py_TRACE_REFS)
//#define Py_TRACE_REFS        //注释掉即可

#endif

第二,某些函数Link出错,因为VS debug默认是win32的,这里改为x64,再编译就通过了。



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值