Есть ли способ в Python перечислить все установленные пакеты и их версии?
Я знаю, что могу зайти внутрь python/Lib/site-packages
и посмотреть, какие файлы и каталоги существуют, но мне это очень неудобно. То , что я ищу что - то похожее на npm list
то есть НПМ-LS .
Ответы:
Если у вас есть pip install и вы хотите увидеть, какие пакеты были установлены с помощью ваших инструментов установки, вы можете просто вызвать это:
Он также будет включать номера версий для установленных пакетов.
Обновить
pip был обновлен, чтобы также выдавать тот же результат, что и
pip freeze
при вызове:Заметка
Выходные данные
pip list
отформатированы по-другому, поэтому, если у вас есть сценарий оболочки, который анализирует выходные данные (возможно, для получения номера версии)freeze
и вы хотите изменить свой скрипт для вызоваlist
, вам необходимо изменить код синтаксического анализа.источник
pip list
псевдонимpip freeze
. Писать интуитивно понятноpip freeze > requirements.txt
, но нетpip freeze
.pip list
: pip-installer.org/en/latest/usage.html#pip-list - так что это на самом деле то, что уже идет!help('modules')
должен сделать это за вас.в IPython:
источник
Package.version()
илиpackage.__version__
илиpackage.ver
или любое количество других возможностейЕсли вы хотите получить информацию об установленных вами дистрибутивах Python и не хотите использовать для этого консоль или терминал cmd, а хотите использовать код Python, вы можете использовать следующий код (протестирован с помощью Python 3.4):
pip.get_installed_distributions(local_only=True)
Функция-вызов возвращает итератор и из-за для цикла и функции печати элементов , содержащихся в итерируемом распечатываются разделены символами новой строки (\n
). Результат будет (в зависимости от установленных вами дистрибутивов) выглядеть примерно так:источник
pkg_resources
? AFAICR это частьsetuptools
. Нетpip
. Можем ли мы смело предположить, чтоsetuptools
всегда будет доступно только в зависимости отpip
?Вы можете попробовать: Желток
Для установки желтка попробуйте:
источник
Чтобы запустить это в более поздних версиях pip (протестированных
pip==10.0.1
), используйте следующее:источник
pydoc pip._internal
но не могу достучаться до негоhelp(pip._internal)
, pip .__ builtins_ и т. Д. Справочное руководство по pip также пусто._internal
. Похоже, функциональность официально не раскрывается. Так что обращайтесь с этим осторожно!из командной строки
можно использовать для просмотра всех модулей и для определенных модулей
Для Linux ниже будет работать
источник
-bash: syntax error near unexpected token `('
да! вы должны использовать pip в качестве диспетчера пакетов Python ( http://pypi.python.org/pypi/pip )
с установленными пакетами pip вы можете сделать
и он перечислит все установленные пакеты. Вероятно, вам также следует использовать virtualenv и virtualenvwrapper . Когда вы начинаете новый проект, вы можете делать
а затем (внутри этого virtualenv) выполните
Таким образом, вы можете,
workon my_new_project
а затемpip freeze
, чтобы увидеть , какие пакеты установлены для этого virtualenv / проекта.например:
или если у вас есть пакет python с файлом requirements.pip,
сделает трюк
источник
pip
вместе с ним таким образом!virtualenv
пакетах глобального сайта, которые вам нужно будет использоватьpip list --local
.virtualenv
. Я не знаю ни одной причины, по которой я их не использую, и никто не мешает вам ограничиться изоляцией,virtualenv
если вы предпочитаете.Мое мнение:
источник
Вот способ сделать это, используя
PYTHONPATH
вместо абсолютного пути к вашему каталогу python libs:источник
Если вы используете анаконду:
сделаю это! См. Https://conda.io/docs/_downloads/conda-cheatsheet.pdf
источник
Если это необходимо для запуска из Python, вы можете просто вызвать подпроцесс
источник