Ошибка импорта: невозможно импортировать arff в рабочем состоянии
Я создаю virtualenvs под именем py4all. И я устанавливаю scipy, numpy и liac-arff.
Когда я вхожу в py4all с помощью cd ~/.virtualenvs/py4all, я использую python и могу импортировать arff.
Когда я вызываю py4all с использованием workon, я не могу импортировать arff. Но используя тот же метод, я могу импортировать scipy и numpy.
Я ввожу py4all, используя cd ~/.virtualenvs/py4all, и пытаюсь установить arff, система показывает
Requirement already satisfied (use --upgrade to upgrade): liac-arff in /usr/local/lib/python2.7/site-packages
Я понимаю, что могу использовать arff без использования workon, но мой numpy и scipy устанавливается в py4all, а не в системный python. Какой самый простой способ решить эту проблему?
1 ответ
Правильный способ подготовить новый virtualenv:
- Создать новую виртуальную среду;
- Активируйте эту новую виртуальную среду, используя
workon
(если вы используете обертку) или скрипт активации; - Установите нужные пакеты, т.е.
pip install
; - Деактивировать окружающую среду.
Теперь, когда вы захотите использовать пакеты из созданной среды:
- Активируйте эту новую виртуальную среду, используя
workon
или скрипт активации; - Импортируйте нужные пакеты в интерактивную оболочку или свой скрипт;
- Отключите окружающую среду, когда закончите.
В вашем конкретном случае, если scipy и numpy уже установлены в окружении, просто активируйте его и установите там liac-arff. После этого каждый раз, когда вы будете использовать (импортировать) эти пакеты, когда среда активна, python будет использовать пакеты из среды вместо системных пакетов python.