#python #anaconda
Вопрос:
Есть ли способ получить список пакетов, которые используются, а не просто устанавливаются в среде?
Пример: Я могу установить matplotlib
с conda install matplotlib
помощью , но если я никогда не использовал его ни в одном из файлов, я не хочу, чтобы он был в списке.
Комментарии:
1. pypi.org/project/pip-check-reqs
2. Используется кем? По сути, вы ищете библиотеку для удаления конечного числа модулей python и получения из них всех импортированных классов (при условии отсутствия избыточного импорта).
3. Что именно вы подразумеваете под «использованным»?
4. Не знаю, как еще описать «используется», кроме определения этого слова. Следуя
matplotlib
примеру, если ни в одном из файлов нет ничего подобногоfrom matplotlib import...
, он не использовался5. @dfundako Это довольно круто. Будет ли это также работать для пакетов conda или только для установленных pip?
Ответ №1:
Интересная идея проверить «часто используемые» пакеты в вашей среде. Мне кажется, что прямого способа проверки не существует.
Я также пытаюсь сейчас проработать эту тему. Мой обывателя мысль, что мы можем сделать это в двух последовательных этапов: (а) чтобы найти наиболее используемых пакетов, которые были либо часто обновляются (проверяют conda list --revisions
) или легко узнаваемы потребителем; (Б) для отслеживания зависимостей из этих пакетов (будь то пакет, связанных с другого пакета или нет) через pipdeptree
команду для проверки пакетов зависимостей. Эта ссылка на Anaconda также может быть полезна: Управление пакетами Anaconda
Первый шаг-время от времени определять наиболее часто используемые пакеты в ваших приложениях. Затем только отслеживайте их зависимости с другими пакетами, чтобы связанные пакеты не были удалены неблагоприятным образом. Несмотря на это, я все еще думаю, что лучше придерживаться пакетов по умолчанию, предоставляемых Conda, и буду добавлять дополнительные пакеты только в случае необходимости.