Hec*_*zos 9 python macos pip tensorflow python-3.7
我检查了我的pip3和python3版本:
(tensorflow) MacBook-Pro-de-Hector-2:tensorflow hectoresteban$ pip3 -V
pip 10.0.1 from /Users/hectoresteban/.virtualenvs/tensorflow/lib/python3.7/site-packages/pip-10.0.1-py3.7.egg/pip (python 3.7)
(tensorflow) MacBook-Pro-de-Hector-2:tensorflow hectoresteban$ python3 -V
Python 3.7.0
Run Code Online (Sandbox Code Playgroud)
在我目前正在使用的虚拟环境中:
pip3 install --upgrade https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.9.0-py3-none-any.whl
Run Code Online (Sandbox Code Playgroud)
以标准方式pip3 install tensorflow输出以下消息:
could not find a version that satisfies the requirement tensorflow (from versions: )
Run Code Online (Sandbox Code Playgroud)
安装后使用第一种方法解释:
(tensorflow) MacBook-Pro-de-Hector-2:tensorflow hectoresteban$ python3
>>> import tensorflow
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Users/hectoresteban/.virtualenvs/tensorflow/lib/python3.7/site-packages/tensorflow/__init__.py", line 22, in <module>
from tensorflow.python import pywrap_tensorflow # pylint: disable=unused-import
File "/Users/hectoresteban/.virtualenvs/tensorflow/lib/python3.7/site-packages/tensorflow/python/__init__.py", line 49, in <module>
from tensorflow.python import pywrap_tensorflow
File "/Users/hectoresteban/.virtualenvs/tensorflow/lib/python3.7/site-packages/tensorflow/python/pywrap_tensorflow.py", line 58, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "/Users/hectoresteban/.virtualenvs/tensorflow/lib/python3.7/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 114
def TFE_ContextOptionsSetAsync(arg1, async):
^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
有什么问题?我可以下载其他软件包,如numpy但没有Tensorflow.(MacOS 10.13.4)
hoe*_*ing 13
1.13版本的最新版本候选版本支持Python 3.7,特别是预编译的CPU轮子也可用于MacOS 10.11和更新版本(链接到1.13rc1).如果要测试它,请照常安装:
$ pip install tensorflow>=1.13
Run Code Online (Sandbox Code Playgroud)
一旦它出来,不要忘记将安装升级到1.13.
tensorflow目前不支持Python 3.7.原因是:
tensorflow使用async作为函数参数的名称,async并await在Python 3.7(为指出由@phd成为保留关键字此评论) -这就是为什么你得到的导入错误;
Python 3.7更改了以下PyUnicode_AsUTF8AndSize使用的C API中的函数返回类型tensorflow:
在版本3.7中更改:现在返回类型
const char *而不是char *.
这意味着必须先解决这两个问题,然后tensorflow才能为Python 3.7和Linux/MacOS构建和发布这两个问题.您可以在此处跟踪当前状态:问题#20517.
因此,如果您需要继续使用,解决方案将避免使用Python 3.7 tensorflow.暂时坚持使用Python 3.6.
如果您愿意tensorflow从源代码构建:有一个补丁可以解决这两个问题.如果您想尝试一下,请按照官方文档中的Sources安装TensorFlow教程,唯一的区别在于开头:
克隆存储库
$ git clone https://github.com/tensorflow/tensorflow
Run Code Online (Sandbox Code Playgroud)将补丁内容复制到文件,例如 tf.patch
应用补丁:
$ git apply tf.patch
Run Code Online (Sandbox Code Playgroud)继续本教程的其余部分.
另请注意,您必须构建最新版本protobuf,因为最近添加了对Python 3.7的支持,但未包含在任何已发布的版本中.编辑tensorflow/contrib/cmake/external/protobuf.cmake指向当前HEAD的的protobuf回购.
| 归档时间: |
|
| 查看次数: |
4415 次 |
| 最近记录: |