Numpy & Matplotlib неожиданно не может быть импортирован в Atom, хотя он отлично работает в терминале - PullRequest
0 голосов
/ 11 мая 2018

Я регулярно импортирую Matplotlib Numpy PySide2 в Atom. Они неожиданно не могут быть импортированы по неизвестной причине, а затем оказываются вновь реимпортируемыми, снова необъяснимыми.

При попытке импортировать matplotlib с помощью следующей команды

import matplotlib.pyplot as plt

Этот сценарий запускается без проблем, когда я запускаю в Jupyter notebook или через Terminal. Но при попытке запустить на Hydrogen в Atom я получаю следующее сообщение об ошибке:

File "<ipython-input-3-3dc8365ef973>", line 6
ModuleNotFoundError: No module named 'matplotlib.backends'; 'matplotlib' is not a package
                             ^
SyntaxError: invalid syntax

Я получаю ту же ошибку с Pyside2 при попытке запустить строку

from PySide2.QtWidgets import QApplication, QLabel

Я получаю сообщение об ошибке

ModuleNotFoundError: No module named 'PySide2.QtWidgets'; 'PySide2' is not a package

Вот путь к питону (после ввода which python в Терминале): /anaconda3/bin/python

Я проверил, что matplotlib установлен, запустив команду conda list в Терминале и получил (среди всех других пакетов) эти строки:

matplotlib 2.1.2 py36h6d6146d_0
matplotlib 2.2.2 <pip>
PySide2 5.9.0a1.dev1525348214

Я попытался запустить следующую команду в Терминале, но не решил проблему

sudo apt-get install python3-matplotlib sudo pip3 install matplotlib

У меня была похожая проблема с numpy при попытке импортировать import numpy. Хотя импорт numpy не был проблемой час назад, теперь я получаю следующее сообщение об ошибке (кажется, что оно хочет подключиться к ранее использовавшемуся сценарию, в котором использовался numpy, чтобы открыть сам numpy):

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-5-592c151f282b> in <module>()
      1 # from numpy import genfromtxt as gft
----> 2 import numpy

~/Downloads/numpy.py in <module>()
----> 1 from numpy import genfromtxt
      2 my_data = genfromtxt('/Users/mymac/Documents/PyQt/image_viewer/csv_file_generator/eggs.csv',
      3     delimiter=',',
      4     dtype=None,
      5     encoding=None)

ImportError: cannot import name 'genfromtxt'

У меня возникла та же проблема при попытке импортировать opencv2: я получил следующее сообщение об ошибке:

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
ImportError: numpy.core.multiarray failed to import--------------------------- 
------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-1-8f6675581547> in <module>()
      5 from PySide2.QtCore import *
      6 from PySide2.QtGui import *
----> 7 import cv2
      8 import numpy
      9 import csv

ImportError: numpy.core.multiarray failed to import

Я посетил следующий сайт, который мне не помог (или я не понимал, как именно выполнить шаги для решения проблемы)

ImportError: нет модуля с именем matplotlib.pyplot

Импорт matplotlib.pyplot в редакторе атомов

Ошибка matplotlib: нет модуля с именем matplotlib, даже если он установлен

Я бегу на / с python 3.6.5 macOS 10.13.4 Atom 1.27.0 x64 Hydrogen 2.4.1

1 Ответ

0 голосов
/ 18 августа 2018

Что в !which python дает вам файл python в atom? Это может быть использование системного питона, а не анаконды. Если это не anaconda/bin/python, попробуйте запустить atom после активации источника от root. В терминале source activate root, затем atom. Затем проверьте и посмотрите, что возвращает !which python. Это просто временное исправление, я не уверен, в чем проблема.

...