C++配置Python环境--常见错误

1.配置环境:

确定好C++运行环境是debug/release,一般在debug下的依赖项是python38_d.lib,在release下的依赖项是python38.lib,下载的python版本为python38,并没有python38_d.lib,可以直接使用python38.lib。

 

 2.C++调用python程序:

#include <Windows.h>
#include <iostream>
#include <tchar.h>
#include <Python.h>

using namespace std;

int main()
{
	//调用python函数
	Py_Initialize();  //初始化
	if (!Py_IsInitialized())
	{
		cout << "Python init fail" << endl;
		return -1;
	}

	PyObject* pModule, *pFun;
	PyRun_SimpleString("import sys");
	PyRun_SimpleString("sys.path.append('C:/Users/Desktop/7.11_25/python_C++/python_C++/')");
	pModule = PyImport_ImportModule("yolov5");  //pModule=NULL:python程序依赖的其他函数没有复制到该路径下
	
	if (pModule==0)
	{
		cout << "Module not found" << endl;
	}
	else
	{
		pFun = PyObject_GetAttrString(pModule, "detect");  //要调用的函数名
		cout << "可以调用到函数pFun!!!";
	}

	Py_Finalize();  //反初始化
	return 0;
}

 3.常见错误:

PyImport_ImportModule一直未能正确加载到模型:

        1. 添加.py文件所在路径;

PyRun_SimpleString("import sys");
PyRun_SimpleString("sys.path.append('C:/Users/Desktop/7.11_25/python_C++/python_C++/')");

        2. 调用python函数之前,要将函数调用的其他文件都放在vs的同级目录下。

        

 调用python函数并传参,利用opencv获取图像的过程,Mat类型出错:

将出现问题的dll文件,放在vs同级目录下:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值