TensorFlow安装后import失败怎么办(小白必看)

关于TensorFlow安装后import调用失败的情况,很多刚入行的同学经常踩坑。网络上求助,大多是碎片化的方案,无法有效解决自己本地问题。针对这个情况,笔者和大家分享一个轻松简单的排查思路,方便同学们抽丝剥茧,找到适合自己的解决方法。

问题背景还原:

通过打开anaconda prompt,输入命令行pip install tensorflow。完成安装后,打开jupyter notebook,输入import tensorflow时,出现报错,找不到该模块:

# ImportError: No module named tensorflow


出现这种情况,不要着急。让我们把上面的几句话,拆解为步骤:

第1步:打开anaconda prompt

第2步:输入pip install进行安装

第3步:完成安装

第4步:打开jupyter notebook

最后,输入import tensorflow进行调用。


俗话说,只有过程正确,结果才能正确。上述4个步骤,每一步都有坑,你都晓得吗?

第1步:打开anaconda prompt的注意细节

这一步有以下几个细节(按常见性排序):

1. 打开anaconda prompt时,要右键管理员身份运行,否则会出现未知错误

2. anaconda软件确保是64位安装包,如果是32位的,要卸载重新安装64anaconda

3. 如果习惯通过cmd打开命令窗口,要记得先输入activate到指定环境,再输入pip install prompt安装命令。不要在cmd下直接执行该命令,虽然有人这样操作也可以成功安装,但你的电脑环境和别人不一样,一定按照标准操作来。

第2步:输入pip install进行安装时的细节

这一步常出现的情况有:

1. 下载速度慢,经常超时中断;有时误以为下载完成,其实没有安装成功

2. 安装时出现wrapt报错,或出现twist版本过低的提示

关于第1点,我们通过镜像方式解决,代码如下:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ --upgrade tensorflow==2.0.0 

GPU用户,需改为tensorflow-gpu==2.0.0

# pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ --upgrade tensorflow==2.0.0

# pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ --upgrade tensorflow-gpu==2.0.0


在命令行中输入代码时,一定要仔细,比如https:后面是双斜杠// ,upgrade前面是--,等

阿里镜像源也不错,推荐使用:

阿里云:http://mirrors.aliyun.com/pypi/simple/

关于第2点,主要还是本机的tensorflow版本问题

出现wrapt报错时,可以通过下列代码来解决

# pip install wrapt --upgrade --ignore-installed


出现twist版本过低时,可以网络搜索twist,下载更高版本,安装后再进行pip install tensorflow安装

但有些电脑可能升级twist也会报错。笔者建议可以尝试更低的tensorflow版本。如果tensorflow2.0版本安装时出现报错,就尝试安装tensorflow1.5或者1.1.5版本即可解决。

pip指定tensorflow版本安装代码如下:

# pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ --upgrade tensorflow-gpu==1.1.5


第3步,完成安装后,一定要再次检查是否真的安装成功

这一步非常重要,很多新手忽略了。通过conda list tensorflow来检查是否已存在tensorflow库

# (base) C:\Windows\system32>conda list tensorflow

# packages in environment at D:\Anaconda3:

# Name                      Version                  Build  Channel

tensorflow                   1.15.0                    <pip>

tensorflow-estimator    1.15.1                   <pip>


当列表中出现tensorflow,就说明成功安装了。如果你的列表中只有tensorflow-estimator,而没有tensorflow这个文件,那说明未安装成功,要回到本文的第1步,检查自己到底哪个环节疏漏了。

第4步:打开jupyter notebook,执行import调用

如果前3步你都正确执行了,那么最容易被新手忽略的一步来了,很多新手出现问题,都是栽在这一步了!要认真听了

在第3步的代码中,笔者将tensorflow安装在了base环境,很多伙伴喜欢通过anaconda创建虚拟环境,然后在虚拟环境安装tensorflow库。比如你创建了一个虚拟环境,命名为:B 。

然后如下操作:

# activate B    //激活虚拟环境B

# jupyter notebook    //启动jupyter


系统启动默认浏览器,进入jupyter web开发界面,新建.ipynb,输入:

# import tensorflow as tf

# sess = tf.Session()

# a = tf.constant(10)

# b= tf.constant(12)

# sess.run(a+b)


运行结果为22,就代表你已经完全安装好Tensorflow了;如果提示:ImportError: No module named tensorflow,那又是什么原因呢?

首先你要打开anaconda图形管理页面,在【HOME】中切换到虚拟环境B,检查下其jupyter notebook是否已安装。


如果按钮为“Launch”,代表已安装;如果按钮为“Install”,代表B环境下的jupyter还未安装,当你在命令行中如下输入时:

# (base) C:\Windows\system32>activate B

# (B) C:\Windows\system32>jupyter notebook


(B) C:\Windows\system32,表示你当前已经切换到虚拟环境B中进行操作,但其实anaconda默认启动浏览器后,进入的是base环境下jupyter,因为虚拟环境B中jupyter并没有被安装。这也就解释了为什么明明安装了tensorflow,却import不到。

原因就是:你将tensorflow安装在了虚拟环境B,而你正在使用base环境下jupyter编程。

解决方法就是:在第4步中我们一定要注意,提前在anaconda图形管理器中,将虚拟环境下的jupyter notebook安装完成,然后再执行如下代码,就可以顺利启动虚拟环境B的jupyter,进行网页端编程了:

# activate B  //激活虚拟环境B

# jupyter notebook  //启动jupyter


最后再补充一点小贴士,学习tensorflow初学者,一般也会用到keras。keras镜像安装代码如下:

# pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ --upgrade keras==2.3.1


这里要特别注意的是,keras是基于tensorflow代码高度封装的库,keras版本和tensorflow版本需要对应。不可以随便安装版本,具体对应规则,网络搜索“keras和tensorflow版本对应”即可。

会者不难,难者不会。TensorFlow的安装过程,很多新人可能搞上2-3天还是不成功。只要注意以上4个步骤,见招拆招,每一步都正确,那么结果就会是正确的。

本文到此完结,希望对你有帮助。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342

推荐阅读更多精彩内容