VC工程的当前工作目录和.py文件所在目录最好一直。
当.py文件和工程不在统一目录时,若要import .py文件,只需要在import之前增加python的搜索目录就可以了:
#include "stdafx.h"
#include <Python.h>
#include <stdio.h>
#include <iostream>
using namespace std; //导入std名字空间
int _tmain(int argc, _TCHAR* argv[])
{
cout << "Starting Test..." << endl;
Py_Initialize(); //使用python之前,要调用Py_Initialize();这个函数进行初始化
PyObject * pModule = NULL; //声明变量
PyObject * pFunc = NULL; //声明变量
PyRun_SimpleString("import sys");
PyRun_SimpleString("sys.path.append('D:/2018program/VCPythonFile/VCPythonFile/')");
cout << "------------"<<endl;
pModule = PyImport_ImportModule("helloworld"); //这里是要调用的Python文件名
cout << pModule << endl;
pFunc = PyObject_GetAttrString(pModule, "printHello"); //这里是要调用的函数名
PyEval_CallObject(pFunc, NULL); //调用函数,NULL表示参数为空
Py_Finalize(); //调用Py_Finalize,这个和Py_Initialize相对应的.
return 1;
}