Использование предустановленной библиотеки или пакетов с flask на python

#python #virtualenv

#python #virtualenv

Вопрос:

У меня уже установлены все библиотеки, необходимые для разработки. Но когда я пытаюсь импортировать их в виртуальную среду flask, появляется сообщение «Модуль не найден». Когда я пытаюсь запустить python в командной строке без виртуальной среды, он импортирует их без каких-либо ошибок. Итак, я пришел к выводу, что виртуальной среде необходимо заново установить все библиотеки. Я не хочу этого делать, есть ли другой способ?

Комментарии:

1. Должно быть возможно решить это с помощью PYTHONPATH, немного зависит от того, как настроена ваша среда и тому подобное. Но наличие «дубликатов» в вашем virtualenv на самом деле не проблема, по моему опыту, модули «вне среды» обычно старые и мешают.

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

Ответ №1:

Если вы создаете свой virtualenv с --system-site-packages флагом, вы можете использовать глобально установленные пакеты. По умолчанию вы не можете.

Комментарии:

1. Примечание — обычно лучше не этого делать, потому что таким образом вы будете знать, что ваше requirements.txt завершено, включая все, что вам нужно для запуска вашего приложения.

2. Спасибо, это сработало. Но почему-то, когда я запускаю jupyter notebook вне среды, он выдает эту ошибку: AttributeError: объект типа ‘Вызываемый’ не имеет атрибута ‘_abc_registry’. УТОЧНИТЕ, связано ли это с этим или нет.

3. Неважно, что это была проблема с какой-то библиотекой, называемой typing. что исправлено путем удаления библиотеки.