qt 调用python

环境:qt5.9.6 msvc2017 64bit       python27 64bit

首先在工程中进行环境配置:这里需要注意,在debug模式下编译时 会报找不到python27_d.lib  解决办法是在复制python27.lib 一份,然后重命名为python27_d.lib

环境配好后,在代码中调用:

首先加头文件

然后在pro中修改 表示 生成的程序要放在bin中

python文件,如果已经有了,就直接放在bin中,供程序调用

如果需要新建,则 新建时选择bin目录即可

 

然后具体使用方法:

    Py_Initialize();   //初始化
    if(!Py_IsInitialized())
    {
        qDebug() << "Py_IsInitialized failed";
        return;
    }

    //导入模块
    PyObject* pModule =PyImport_ImportModule("detection");
    if(!pModule)
    {
        qDebug()<<"can not open python file";
        return;
    }

    //获取函数
    PyObject* func = PyObject_GetAttrString(pModule,"detectionAll");
    if (!func)
    {
        qDebug() << "get func detectionAll failed!";
        return;
    }

    //调用函数
    PyObject *pReturn = PyObject_CallFunction(func, NULL);
    if (NULL == pReturn)
    {
        qDebug() << "NULL == pReturn";
        return;
    }

    //获取py返回值
    int zq;
    int cw;
    int zh;
    int jq;
    PyArg_ParseTuple(pReturn, "iiii", &zq,&cw,&zh,&jq);

c++调用python 需要传参和接收返回值,这一块儿没仔细研究

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值