Невозможно импортировать тензор потока в python3 и ImportError: этот пакет не должен быть доступен в Python 3 - PullRequest
1 голос
/ 05 апреля 2019

Я пытаюсь использовать тензорный поток для исследования в моем MacBook. Я использую pip3 для установки tenorflow в системе (не в виртуальной среде).

Сначала я просто хочу убедиться, что тензорный поток может быть корректно импортирован через python3 в терминале. Однако иногда при импорте возникала следующая проблема.

>>>import tensorflow as tf
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/cyan/Library/Python/3.5/lib/python/site-packages/tensorflow/__init__.py", line 24, in <module>
from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import
  File "/Users/cyan/Library/Python/3.5/lib/python/site-packages/tensorflow/python/__init__.py", line 47, in <module>
import numpy as np
  File "/Library/Python/2.7/site-packages/numpy/__init__.py", line 142, in <module>
from . import add_newdocs
  File "/Library/Python/2.7/site-packages/numpy/add_newdocs.py", line 13, in <module>
from numpy.lib import add_newdoc
  File "/Library/Python/2.7/site-packages/numpy/lib/__init__.py", line 8, in <module>
from .type_check import *
  File "/Library/Python/2.7/site-packages/numpy/lib/type_check.py", line 11, in <module>
import numpy.core.numeric as _nx
  File "/Library/Python/2.7/site-packages/numpy/core/__init__.py", line 14, in <module>
from . import multiarray
ImportError: dlopen(/Library/Python/2.7/site-packages/numpy/core/multiarray.so, 2): Symbol not found: _PyBuffer_Type
  Referenced from: /Library/Python/2.7/site-packages/numpy/core/multiarray.so
  Expected in: flat namespace in /Library/Python/2.7/site-packages/numpy/core/multiarray.so

Эту ошибку можно устранить, только если я сначала запустил следующий код перед выполнением python3

unset PYTHONPATH

Если я не сбросил PYTHONPATH, я также обнаружил ошибки при проверке версии pip3 с помощью

pip3 --version

Ошибки отображаются следующим образом.

>> pip3 --version
Traceback (most recent call last):
  File "/usr/local/bin/pip3", line 6, in <module>
from pip._internal import main
  File "/Library/Python/2.7/site-packages/pip/_internal/__init__.py", line 19, in <module>
from pip._vendor.urllib3.exceptions import DependencyWarning
  File "/Library/Python/2.7/site-packages/pip/_vendor/urllib3/__init__.py", line 8, in <module>
from .connectionpool import (
  File "/Library/Python/2.7/site-packages/pip/_vendor/urllib3/connectionpool.py", line 11, in <module>
from .exceptions import (
  File "/Library/Python/2.7/site-packages/pip/_vendor/urllib3/exceptions.py", line 2, in <module>
from .packages.six.moves.http_client import (
  File "/Library/Python/2.7/site-packages/pip/_vendor/urllib3/packages/six.py", line 203, in load_module
mod = mod._resolve()
  File "/Library/Python/2.7/site-packages/pip/_vendor/urllib3/packages/six.py", line 115, in _resolve
return _import_module(self.mod)
  File "/Library/Python/2.7/site-packages/pip/_vendor/urllib3/packages/six.py", line 82, in _import_module
__import__(name)
  File "/Library/Python/2.7/site-packages/http/__init__.py", line 7, in <module>
raise ImportError('This package should not be accessible on Python 3. '
ImportError: This package should not be accessible on Python 3. Either you are trying to run from the python-future src folder or your installation of python-future is corrupted.

Я думал, что было так неудобно каждый раз сбрасывать PYTHONPATH, так есть ли какие-нибудь решения для этой проблемы? Я также хочу импортировать тензор потока в другие текстовые редакторы, такие как Sublime и Pycharm, поэтому я действительно не был уверен, что делать дальше.

1 Ответ

0 голосов
/ 05 апреля 2019

Я попробовал тот же сценарий.Это работает нормально для меня.В первой ошибке кажется, что ваша установка на python испорчена.Если вы используете python3 в терминале, он не должен ссылаться на библиотеки 2.7.

Также я не думаю, что вам каждый раз требуется неустановленная PYTHONPATH.Во-первых, вам не нужно настраивать PYTHONPATH.Кажется, установка получила проблему.

Вы используете homebrew в mac для установки пакетов.Если нет, я скажу использовать доморощенный, и это будет работать как шарм.Как это добавляет зависимость должным образом.

Спасибо, Ашиш

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...