Python: импорт lmfit.models не работает

Этот пост связан с моим другим, где мне сказали использовать lmfit для исправить мою проблему.

Я установил lmfit в приглашении anaconda с помощью команды conda install --channel "conda-forge" lmfit, которая сработала. Но теперь, когда я пытаюсь использовать его в своей программе, я получаю следующую ошибку:

ModuleNotFoundError: нет модуля с именем 'lmfit.model'; 'lmfit' не является пакетом

Вот как выглядит начало моей программы:

import numpy as np
import math
import scipy    #I dont need scipy, but I read, that lmfit needs scipy. It doesn't change anything when its there or not.
import matplotlib.pyplot as plt
from lmfit.model import GaussianModel

Я также пытался импортировать lmfit отдельно, например:

import lmfit
from lmfit.model import GaussianModel

Но тоже не работает...

Я попробовал все с веб-сайта lmfit, но с помощью "git" -thing в Anaconda Prompt выдает ошибку (что-то вроде команды не существует)

Я также нашел эту запись и импортировал из импорта lmfit * работает. Теперь у меня проблема, что мне как-то нужно импортировать GaussianModel, что я не знаю, как это сделать. Если я просто добавлю из lmfit import GaussianModel, я получаю сообщение об ошибке

ImportError: невозможно импортировать имя GaussianModel

Я тоже что-то читал про порядок импорта пакетов и модулей важен - проблема в этом? Как я могу это исправить?

Я работаю над окнами с анакондой/пауком.


person Carina    schedule 20.02.2018    source источник
comment
Это множественное число: from lmfit.models import GaussianModel.   -  person    schedule 21.02.2018
comment
Это, однако, не объясняет сообщение об ошибке, которое вы цитируете. Убедитесь, что вы не запускаете это в каталоге, где у вас есть каталог lmfit или файл lmfit.py, поскольку в этом случае Python попытается импортировать это (что, вероятно, не является установленным пакетом).   -  person    schedule 21.02.2018
comment
Просто чтобы быть уверенным, правильно ли я вас понимаю: мне нужно перейти в настройки - текущий рабочий каталог и выбрать каталог, в котором находится lmfit (lmfit-0.9.7-py36_0.json) (который будет Anaconda/conda-meta для мне)? Или я вас не так понял?   -  person Carina    schedule 21.02.2018
comment
Либо pip install lmfit, либо conda install -c gsecars lmfit должны работать. Увидев одну из этих работ, убедитесь, что вы можете выполнить import lmfit из приглашения python или ipython в spyder или из сеанса python, запущенного в приглашении anaconda. Вам НЕ нужно находиться в папке, в которую был распакован lmfit. На самом деле вам не нужна папка или файл с именем lmfit в вашем рабочем каталоге — это вызовет путаницу, о которой говорит Эверт.   -  person M Newville    schedule 21.02.2018
comment
Нет, вы хотите избежать каталога, в который вы скачали lmfit и где он установлен. Я не знаю, как Spyder обычно работает с каталогами, так как я привык к командной строке, но похоже, что между именами файлов есть конфликт.   -  person    schedule 21.02.2018
comment
Вот что можно попробовать: только import lmfit, затем print(lmfit.__file__) скажет вам, какой файл (с полным путем) он использует. Посмотрите, похоже ли это на правильный файл или на неправильный файл.   -  person    schedule 21.02.2018
comment
@MNewville @Evert Большое спасибо, теперь все работает! Я сделал все, что вы мне сказали, я думаю, что conda install -c gsecars lmfit заставил это работать :) Путь к моему файлу следующий (для других, у которых такая же проблема): C:\Users\Carina\Anaconda3\lib\site- пакеты\lmfit-0.9.8-py3.6.egg\lmfit__init_.py_   -  person Carina    schedule 21.02.2018