导入tensorflow时报错:cannot import name 'abs'的解决

yipeiwu_com6年前Python基础

一,问题背景

作者在用tensorflow做实验时,import tensorflow忽然报错:cannot import name 'abs'。错误情况如下所示:

这个问题出现的比较新,网上暂时没有太多的讨论。

二,可能原因

对于这个问题,讨论最多的在github上,附上链接:https://github.com/tensorflow/tensorflow/issues/20778

提问者也是遇到了同样的问题:

tensorflow官方暂时将这个问题标记为了“待回应”。

有网友指出该问题的产生原因可能为:

1.需要正确版本的protobuf

2.可能是_impl路径的问题

3.可能与python的版本有关

4.这个bug几乎只有在windows下出现,目前针对该问题,官方还未给出具体原因和解决方法

三,解决办法

有人尝试更新protobuf,重新安装tensorflow,但是问题仍旧存在:

后续有人给出了解决办法,经测试,下面这种方法能解决这个问题:

解决方法:

1. 运行tensorflow,此时会报错,按后面的步骤继续做

2. 删除tensorflow文件夹

3. 卸载tensorflow后再重新安装即可解决问题

总的来说,执行这些步骤后,可成功导入tensorflow:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python面向对象之多态原理与用法案例分析

Python面向对象之多态原理与用法案例分析

本文实例讲述了Python面向对象之多态原理与用法。分享给大家供大家参考,具体如下: 目标 多态 面向对象三大特性 封装 根据 职责 将 属性 和 方法 封装 到一个抽象的 类 中 定义...

python 用opencv调用训练好的模型进行识别的方法

此程序为先调用opencv自带的人脸检测模型,检测到人脸后,再调用我自己训练好的模型去识别人脸,使用时更改模型地址即可 #!usr/bin/env python import cv2...

python 循环遍历字典元素的简单方法

一个简单的for语句就能循环字典的所有键,就像处理序列一样: In [1]: d = {'x':1, 'y':2, 'z':3} In [2]: for key in d: ....

使用django和vue进行数据交互的方法步骤

一、前端请求的封装 1.将请求地址封装起来,以便日后修改,在src/assets/js目录下创建getPath.js文件 export default function getUrl...

利用pyinstaller或virtualenv将python程序打包详解

运行环境: CentOS6.5_x64 Python版本 : 2.6 使用pyinstaller打包 pyinstaller可以将python程序打包成二进制文件,打包后的文件在没有p...