安装Paddlepaddle import paddle.fluid as fluid报错:ImportError: /opt/ros/kinetic/lib/python2.7/dist-pack

在配置Ubuntu16.04环境下的paddlepaddle时经常会遇到安装成功后,import paddle.fluid as fluid报错。报错截图如下:(其实是两个问题python2.7cv2文件和paddle下的__init__.py)

>>> import paddle.fluid as fluid
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/pac/.local/lib/python3.7/site-packages/paddle/__init__.py", line 39, in <module>
    from . import incubate
  File "/home/pac/.local/lib/python3.7/site-packages/paddle/incubate/__init__.py", line 15, in <module>
    from . import hapi
  File "/home/pac/.local/lib/python3.7/site-packages/paddle/incubate/hapi/__init__.py", line 16, in <module>
    from . import vision
  File "/home/pac/.local/lib/python3.7/site-packages/paddle/incubate/hapi/vision/__init__.py", line 15, in <module>
    from . import transforms
  File "/home/pac/.local/lib/python3.7/site-packages/paddle/incubate/hapi/vision/transforms/__init__.py", line 15, in <module>
    from . import transforms
  File "/home/pac/.local/lib/python3.7/site-packages/paddle/incubate/hapi/vision/transforms/transforms.py", line 18, in <module>
    import cv2


在Python3下运行import
因为Ubuntu16.04默认Python环境是,Python2.7.12和Python3.5.2,理论上按照paddle官网的解释是可以支持,3.5.1+版本的Python,但是出现了这种错误后,咨询了官方交流群的管理,他建议我把版本换成3.7(另外在18.04的3.6.9则不会遇到这种问题)至此我一直以为是Python3的问题,其实不然。
上图可见,在Python3.7.7下还是会import失败。

于是我继续在交流群询问,也没有好的解决办法。直到看到了之前见过一次但是没有认真看的帖子解决import cv2的错误

我大概有解决思路了,首先解决在Python2.7下面的这个问题:
在安装好paddlepaddle的环境下(pip list指令可以查询),打开终端依次输入:

python3
import sys
sys.path.remove('/opt/ros/kinetic/lib/python2.7/dist-packages')

此时再去import paddle.fluid as fluid
会有如下报错:

>>> import paddle.fluid as fluid
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/pac/.local/lib/python3.7/site-packages/paddle/__init__.py", line 35, in <module>
    batch = batch.batch
NameError: name 'batch' is not defined

此时按照上面的路径打开__init__.py文件,在home目录下/.local/lib/python3.7/site-packages/paddle/init.py(可以用Ctrl+h打开查看隐藏文件.local)

paddle目录下如图这时候打开__init__.py文件,如下图:


找到,图中我8.1号的注释,也就是原本代码为:

batch = batch.batch

的地方,用#将这一行注释掉。

至此,在Python3下再次运行 :

import paddle.fluid as fluid

不会出现报错,再运行:

 fluid.install_check.run_check()

发现paddlepaddle安装成功,至此问题解决!
在这里插入图片描述

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值