简体   繁体   中英

Cannot import Tensorflow in ipython

I have tensorflow version 1.0.0 non-GPU version on my macbook pro Yosemite. It is installed in a virtualenv, and I have python 2.7. I have six version 1.4.1. When I do python on the command line and import six, it works fine. But when I enter 'ipython' and import tensorflow, I see this error:

AttributeError                            Traceback (most recent call last)
<ipython-input-1-cd232424f60d> in <module>()
----> 1 execfile('hw4/net.py')

/Users/lingxiao/Documents/research/dialogue-systems/hw4/net.py in <module>()
      8 import time
      9 import numpy as np
---> 10 import tensorflow as tf
     11 
     12 import app

/Users/lingxiao/tensorflow/lib/python2.7/site-packages/tensorflow/__init__.py in <module>()
     22 
     23 # pylint: disable=wildcard-import
---> 24 from tensorflow.python import *
     25 # pylint: enable=wildcard-import
     26 

/Users/lingxiao/tensorflow/lib/python2.7/site-packages/tensorflow/python/__init__.py in <module>()
    122 from tensorflow.python.platform import resource_loader
    123 from tensorflow.python.platform import sysconfig
--> 124 from tensorflow.python.platform import test
    125 
    126 from tensorflow.python.util.all_util import remove_undocumented

/Users/lingxiao/tensorflow/lib/python2.7/site-packages/tensorflow/python/platform/test.py in <module>()
     67 # pylint: disable=g-bad-import-order
     68 from tensorflow.python.client import device_lib as _device_lib
---> 69 from tensorflow.python.framework import test_util as _test_util
     70 from tensorflow.python.platform import googletest as _googletest
     71 from tensorflow.python.util.all_util import remove_undocumented

/Users/lingxiao/tensorflow/lib/python2.7/site-packages/tensorflow/python/framework/test_util.py in <module>()
     41 from tensorflow.python.framework import random_seed
     42 from tensorflow.python.framework import versions
---> 43 from tensorflow.python.platform import googletest
     44 from tensorflow.python.platform import tf_logging as logging
     45 from tensorflow.python.util import compat

/Users/lingxiao/tensorflow/lib/python2.7/site-packages/tensorflow/python/platform/googletest.py in <module>()
     31 
     32 from tensorflow.python.platform import app
---> 33 from tensorflow.python.platform import benchmark  # pylint: disable=unused-import
     34 
     35 Benchmark = benchmark.TensorFlowBenchmark  # pylint: disable=invalid-name

/Users/lingxiao/tensorflow/lib/python2.7/site-packages/tensorflow/python/platform/benchmark.py in <module>()
    115 
    116 
--> 117 class Benchmark(six.with_metaclass(_BenchmarkRegistrar, object)):
    118   """Abstract class that provides helper functions for running benchmarks.
    119 

/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six.pyc in with_metaclass(meta, *bases)
    564 def with_metaclass(meta, *bases):
    565     """Create a base class with a metaclass."""
--> 566     return meta("NewBase", bases, {})
    567 
    568 def add_metaclass(metaclass):

/Users/lingxiao/tensorflow/lib/python2.7/site-packages/tensorflow/python/platform/benchmark.py in __new__(mcs, clsname, base, attrs)
    110     newclass = super(mcs, _BenchmarkRegistrar).__new__(
    111         mcs, clsname, base, attrs)
--> 112     if not newclass.is_abstract():
    113       GLOBAL_BENCHMARK_REGISTRY.add(newclass)
    114     return newclass

AttributeError: type object 'NewBase' has no attribute 'is_abstract'

I tried upgrading six and I am still seeing version 1.4.1. Is six the problem here? if not what is?

It seems that there's a number of things tangled. I'm using Anaconda2 with six==1.10.0 , tensorflow==1.0.0 and Python 2.7.12. A quick experiment would be to install Anaconda2 (ie with python2.7) then pip install TF and other dependencies and try it out.

The Anaconda installation is self-contained, so that you won't be affected by other system-wide issues. I just did it by running /Users/myusername/anaconda2/bin/ipython

My guess is that you need to install iPython from within the virtual environment. if you haven't done that, ipython will use the vanilla interpreter even though you are in a virtual environment.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM