C++调用python时候,因为PIL 库导致 PyImport_ImportModule 失败的问题

在C++中想调用python ,在导入python 的时候,遇到了问题,一直没解决。

Py_Initialize();
    std::cout << "Importing Deeplab V3 ..." << std::endl;
  PyRun_SimpleString("import sys");
    PyRun_SimpleString("sys.path.append('../python/')");

    PyObject *py_module =NULL,*py_class=NULL,*net=NULL;

    // 导入deeplab.py  module
    // 2021.03.05 发现 matplotlib.pyplot 导入会出错
    py_module = PyImport_ImportModule("hello");
    if (!py_module)
    {
        cout << "Python get module failed." << endl;
        return 0;
    }

下面是我的hello.py 文件

import sys
import numpy as np
import tensorflow as tf
from PIL import Image,ImageDraw
imagefile="2.jpg"
im = Image.open('2.jpg').convert('RGBA')

发现在执行 im = Image.open(‘2.jpg’).convert(‘RGBA’) 的时候会出错。我的路径应该是对的,现在不知道该怎么办了。。。。。。求大神解决

错误是下面这行代码导入不成功:

py_module = PyImport_ImportModule("hello");

在这里插入图片描述错误是导入python 文件一直不成功!
已解决:
C++ 调用 pthon 的时候,使用的pyhton 文件的路径也是C++ 的路径 ,所以建议你在python 读取文件的时候,使用绝对路径

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值