Не удалось установить numpy для python2

Я раньше имел работу numpy ранее. Не уверенный, что произошло, но теперь я получаю ошибку импорта:

>>> import numpy
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named numpy

Я попытался удалить и переустановить numpy, использующий зернышко, и Кв. (импортируйте error:module, названный numpy), как предложено в других ответах, но это не решило мою проблему. Это говорит, что у меня есть новейшая версия numpy:

$ sudo apt install python-numpy
Reading package lists... Done
Building dependency tree       
Reading state information... Done
python-numpy is already the newest version (1:1.13.3-2ubuntu1).
The following packages were automatically installed and are no longer required:
  libllvm6.0 libllvm6.0:i386 libllvm7 libllvm7:i386
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 79 not upgraded.
$ python -c "import numpy"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ImportError: No module named numpy

Только для упоминания numpy хорошо работает в python3.

0
задан 24 November 2019 в 09:06

2 ответа

Оказывается, в моей системе было две установки Python. Один в /usr/bin, а другой в /usr/local/bin/, первый из которых является системной версией, а второй установлен мной некоторое время назад. Все установки и переустановки пакетов, которые я делал с помощью pip или apt-get, были связаны с системной версией python, тогда как путь к python был направлен на выборочную установку.Таким образом, всякий раз, когда я открывал python из терминала, я в основном вызывал пользовательскую установку, в то время как все пакеты были установлены в системной версии. Это приводило к ошибкам при импорте разных пакетов.

Одним из решений было просто удалить локальную установку. Другое решение, которое я сделал, это перенаправить символическую ссылку на версию системы следующим образом: sudo ln -sf /usr/bin/python /usr/local/bin/python

Это сделало работу.

0
ответ дан 11 January 2020 в 01:59

Когда Вы устанавливаете приложение в зернышке, необходимо указать который версия зернышка, или для системы или пользователя. (pip2 для Python2, и pip3 для python3.) Кроме того, существуют системные и пользовательские экземпляры. При установке библиотеки Python иногда необходимо указать, является ли это для пользователя или для целой системы. Например,

pip2 install --user numpy
sudo -H pip2 install --system numpy

Кроме того, pip2 и pip3 являются отдельными и не пересекают.

$:~/$ pip2 install --user numpy
    Collecting numpy
      Downloading https://files.pythonhosted.org/packages/d7/b1/3367ea1f372957f97a6752ec725b87886e12af1415216feec9067e31df70/numpy-1.16.5-cp27-cp27mu-manylinux1_x86_64.whl (17.0MB)
        100% |████████████████████████████████| 17.0MB 83kB/s 
    Installing collected packages: numpy
    Successfully installed numpy-1.16.5
$:~/$ pip3 install --user numpy
        Collecting numpy
          Downloading https://files.pythonhosted.org/packages/d2/ab/43e678759326f728de861edbef34b8e2ad1b1490505f20e0d1f0716c3bf4/numpy-1.17.4-cp36-cp36m-manylinux1_x86_64.whl (20.0MB)
            100% |████████████████████████████████| 20.0MB 83kB/s 
        Installing collected packages: numpy
        Successfully installed numpy-1.17.4

С некоторым тестированием я узнал это sudo apt install python-numpy установки для python3 для Вас. Для меня это установило его для python2 и не python3. Причина состоит в том, потому что моя система принята значение по умолчанию к использованию python2 как основной Python. Для некоторых систем python3 является Python по умолчанию для библиотек, которые будут установлены для. Так, я действительно предлагаю привыкнуть к выполнению pip2 и pip3 для установки библиотек.

0
ответ дан 21 December 2019 в 23:51

Другие вопросы по тегам:

Похожие вопросы: