2016-06-15 73 views
2

TL;尝试在El Capitan上使用TensorFlow时DR获取ImportError: cannot import name pywrap_tensorflow OS X上的Tensorflow导入错误

详情:我遵循here的Mac OS X的TensorFlow安装说明。

的Mac OS X,CPU只,Python 2.7版:
$ export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/mac/tensorflow-0.9.0rc0-py2-none-any.whl 

$ export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/mac/tensorflow-0.9.0rc0-py2-none-any.whl 

$ sudo pip install --upgrade $TF_BINARY_URL 

这些步骤是成功的。

所以让我们尝试一下:

22:54:00/tensorflow $ipython 
Python 2.7.11 (default, Jan 22 2016, 08:29:18) 
Type "copyright", "credits" or "license" for more information. 

IPython 4.2.0 -- An enhanced Interactive Python. 
?   -> Introduction and overview of IPython's features. 
%quickref -> Quick reference. 
help  -> Python's own help system. 
object? -> Details about 'object', use 'object??' for extra details. 
[TerminalIPythonApp] WARNING | File not found: '/shared/.pythonstartup' 

In [1]: import tensorflow as tf 
--------------------------------------------------------------------------- 
ImportError        Traceback (most recent call last) 
<ipython-input-1-41389fad42b5> in <module>() 
----> 1 import tensorflow as tf 

/git/tensorflow/tensorflow/__init__.py in <module>() 
    21 from __future__ import print_function 
    22 
---> 23 from tensorflow.python import * 

/git/tensorflow/tensorflow/python/__init__.py in <module>() 
    46 _default_dlopen_flags = sys.getdlopenflags() 
    47 sys.setdlopenflags(_default_dlopen_flags | ctypes.RTLD_GLOBAL) 
---> 48 from tensorflow.python import pywrap_tensorflow 
    49 sys.setdlopenflags(_default_dlopen_flags) 
    50 

ImportError: cannot import name pywrap_tensorflow 
+0

https://github.com/tensorflow/tensorflow/issues/3217 –

回答

3

TL; DR:当你想import tensorflow不要从TensorFlow git仓库的根目录运行ipython(或python)。

我回答了类似的问题here。最简单的解决方案是在运行ipython之前从当前目录(例如cd ~)中取出cd。这将防止Python被当前路径中的tensorflow源子目录所迷惑。 git存储库中的./tensorflow目录不包含运行TensorFlow所需的所有生成的代码(例如pywrap_tensorflow),但包含名为__init__.py的文件,这会使Python解释器混淆。

+0

嗯你是对的。这是一个奇怪的错误,我不记得它。 – javadba

+0

适合我。谢谢! –