AttributeError:'tuple'对象在导入tensorflow时没有属性'type'

dha*_*has 6 numpy python-3.x tensorflow

我按照这些说明安装了Tensorflow(-gpu)版本1.8.0作为pip包.安装后,我打开了一个python3控制台并输入

import tensorflow as tf
Run Code Online (Sandbox Code Playgroud)

在此之后,我收到以下错误

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/px2/.local/lib/python3.5/site-packages/tensorflow/__init__.py", line 24, in <module>
    from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import
  File "/home/px2/.local/lib/python3.5/site-packages/tensorflow/python/__init__.py", line 47, in <module>
    import numpy as np
  File "/home/px2/.local/lib/python3.5/site-packages/numpy/__init__.py", line 142, in <module>
    from . import core
  File "/home/px2/.local/lib/python3.5/site-packages/numpy/core/__init__.py", line 57, in <module>
    from . import numerictypes as nt
  File "/home/px2/.local/lib/python3.5/site-packages/numpy/core/numerictypes.py", line 111, in <module>
    from ._type_aliases import (
  File "/home/px2/.local/lib/python3.5/site-packages/numpy/core/_type_aliases.py", line 63, in <module>
    _concrete_types = {v.type for k, v in _concrete_typeinfo.items()}
  File "/home/px2/.local/lib/python3.5/site-packages/numpy/core/_type_aliases.py", line 63, in <setcomp>
    _concrete_types = {v.type for k, v in _concrete_typeinfo.items()}
AttributeError: 'tuple' object has no attribute 'type'
Run Code Online (Sandbox Code Playgroud)

StackOverflow上报告的类似问题有一个答案,版本> 1.7似乎没有这个问题.但我似乎在1.8中有它

有人可以帮我吗?

wor*_*ise 7

实际上,这意味着您以某种方式安装了多个版本的numpy(或者有多个版本重叠).您需要确保从系统中完全卸载numpy,然后重新安装.

对我来说,我做到了

pip uninstall numpy
sudo apt-get purge python3-numpy
Run Code Online (Sandbox Code Playgroud)

然后我不得不去/usr/local/lib/python3.6/dist-packages删除由于某种原因仍然存在的numpy文件夹.之后,重新安装numpy

pip install numpy
Run Code Online (Sandbox Code Playgroud)

工作.这是我打开它的github问题:

https://github.com/numpy/numpy/issues/12775