Homebrew做为一个包管理器什么都好,就是在版本管理方面不太方便。默认只能装最新版本,想回退到老版本得费很多劲。这不,Python升级成3.7以后,就遇到了问题:python
不能导入tensorflow了!!!git
这但是出大事了。咋办呢?搜索了好久后在github上找到了解答:原网页连接github
具体来讲,缘由就是Python3.7新引入了保留字async
,而tensorflow的代码里,将其做为了变量名。要修改,方法也很简单:async
首先找到下面这个文件: /usr/local/lib/python3.7/site-packages/tensorflow/python/pywrap_tensorflow_internal.py (若是用的是Anaconda这类发行版,就到对应的site-packages目录下找,不过用Anaconda的应该没这个问题,由于Anaconda尚未升级到Python3.7),而后搜索async
(注意区分大小写),所有替换为async1
,保存关闭。测试
【11.21更新】注意,这里只替换单独的
async
(请参考下方“太阳家的猫”同窗的评论。)google
打开IPython测试一下:spa
import tensorflow as tf
复制代码
没有问题,成功导入啦。code
由于如今tensorflow尚未官方添加对Python3.7的支持,因此用pip直接安装是搜索不到合适的tensorflow包的,这时候就须要直接从.whl安装。具体方法为(以Mac为例):ip
pip install https://download.tensorflow.google.cn/mac/cpu/tensorflow-1.10.0-py3-none-any.whl --upgrade
复制代码
若是访问不了这个地址的,请自行解决。get
安装好以后,就按照上面的方法修改一下async
就能够啦。