vs c++调用 python3.5配置

来源:互联网 发布:查看数据库表空间 编辑:程序博客网 时间:2024/06/04 01:37

#include <Python.h>
#include<iostream>
using namespace std;


int main()
{
Py_SetPythonHome(L"D:\\Users\\Lenovo\\Anaconda3\\envs\\python35");
Py_Initialize();
/*PyRun_SimpleString("import sys");
PyRun_SimpleString("sys.path.append('./')");
PyObject * pModule = NULL;
PyObject * pFunc = NULL;
pModule = PyImport_ImportModule("helloworld");
pFunc = PyObject_GetAttrString(pModule, "Add");
PyObject *pArgs = PyTuple_New(2);
PyTuple_SetItem(pArgs, 0, Py_BuildValue("i", 6));
PyTuple_SetItem(pArgs, 1, Py_BuildValue("i", 8));


PyObject *pReturn = NULL;
pReturn = PyEval_CallObject(pFunc, pArgs);
int result;
PyArg_Parse(pReturn, "i", &result);
cout << "6+8 = " << result << endl;*/
Py_Finalize();



想在C++中调用Python代码,但是在Py_Initialize函数调用时就GG了,查了一天都没结果。
简单的调用代码如下:
#include "stdafx.h"
#include "Python.h"

int _tmain(int argc, _TCHAR* argv[])
{
Py_Initialize();
Py_Finalize();
return 0;
}

哈 找到原因了 跟编译器无关
是因为我安装python的时候没有添加PYTHONHOME这个环境变量
在Py_Initialize()之前调用下Py_SetPythonHome(L"C:\\Python27");就可以了


原创粉丝点击