更新:1.13版引入了对Python 3.7的支持
1.13版本的最新候选版本带来了Python 3.7支持,特别是预编译的CPU轮也可用于MacOS
10.11和更高版本(链接到1.13.1)。照常安装:
$ pip install tensorflow>=1.13
原始答案(已过时)
tensorflow目前不支持Python 3.7。原因是:
tensorflow
用途async
为功能参数的名称,async
并await
成为(由@phd在尖的保留关键字在Python 3.7此评论) -这就是为什么你得到的导入错误;Python 3.7更改了
PyUnipre_AsUTF8AndSize
C API使用的函数的返回类型tensorflow
:
改变在3.7版本:返回类型现在是
const char *相当的char *。
这意味着必须先解决两个问题,然后
tensorflow才能针对Python 3.7和Linux /
MacOS构建和发布它们。您可以在此处跟踪当前状态:问题#20517。
因此,如果需要继续使用,解决方案将避免使用Python 3.7
tensorflow。暂时坚持使用Python 3.6。
如果您愿意
tensorflow从源代码构建:建议使用一个补丁来解决这两个问题。如果您想尝试一下,请遵循官方文档中的“从源代码安装TensorFlow”教程,唯一的区别是在开始时:
克隆存储库
$ git clone https://github.com/tensorflow/tensorflow
将补丁内容复制到文件中,例如
tf.patch
应用补丁:
$ git apply tf.patch
继续本教程的其余部分。
还要注意,由于最近
protobuf已添加了对Python
3.7的支持,但您尚未构建任何最新版本,因此必须构建最新的。编辑
tensorflow/contrib/cmake/external/protobuf.cmake指向当前
HEAD的的
protobuf回购。



