Есть ли способ в Python перечислить все установленные пакеты и их версии? Я знаю, что могу войти внутрь python/Lib/site-packages и посмотреть, какие файлы и каталоги существуют, но я нахожу это очень неудобным. Я ищу что-то похожее на npm list [1].
jsalonen 17 окт. 2012, в 20:13
Поделиться
Возможный дубликат Как я могу получить список локально установленных модулей Python?
RNA 24 апр.
2014, в 18:28
Поделиться:
7 ответов
Лучший ответ
Если у вас установлена программа pip, и вы хотите узнать, какие пакеты были установлены с помощью инструментов установки, вы можете просто называть это:
pip freeze
Он также будет содержать номера версий для установленных пакетов.
Обновление
pip был обновлен, чтобы также получить тот же результат, что и pip freeze , вызвав:
pip list
Примечание
Вывод из pip list отформатирован по-разному, поэтому, если у вас есть оболочка script, которая анализирует вывод (возможно, для доступа к номеру версии) freeze и хочет изменить ваш script на вызов list , вам нужно будет изменить свой синтаксический код.
Как установить Python?
jlafay 17 окт. 2012, в 19:25
Поделиться
ИМХО они должны предоставить pip list в качестве псевдонима для pip freeze . Интуитивно pip freeze > requirements.txt писать pip freeze > requirements.txt , но не pip freeze .
jsalonen 17 окт. 2012, в 17:56
WOW: Только что посмотрел документацию по последней версии pip и похоже, что они добавили pip list пипов : pip-installer.org/en/latest/usage.html#pip-list — так что это на самом деле то, что уже идет!
jsalonen 09 фев. 2013, в 08:22
Ioannis Filippidis 09 июль 2014, в 17:50
jlafay 09 июль 2014, в 19:28
Показать ещё 2 комментария
help(‘modules’) должен сделать это за вас.
In [1]: import #import press-TAB Display all 631 possibilities? (y or n) ANSI audiodev markupbase AptUrl audioop markupsafe ArgImagePlugin avahi marshal BaseHTTPServer axi math Bastion base64 md5 BdfFontFile bdb mhlib BmpImagePlugin binascii mimetools BufrStubImagePlugin binhex mimetypes CDDB bisect mimify CDROM bonobo mmap CGIHTTPServer brlapi mmkeys Canvas bsddb modulefinder CommandNotFound butterfly multifile ConfigParser bz2 multiprocessing ContainerIO cPickle musicbrainz2 Cookie cProfile mutagen Crypto cStringIO mutex CurImagePlugin cairo mx DLFCN calendar netrc DcxImagePlugin cdrom new Dialog cgi nis DiscID cgitb nntplib DistUpgrade checkbox ntpath
Ashwini Chaudhary 17 окт.
2012, в 17:52
Поделиться
Это удобно! Я бы тоже хотел увидеть версии.
jsalonen 17 окт.
2012, в 17:33
Я думаю, что проблема в том, что нет стандартизированного способа включения версии . иногда ее Package.version() или package.__version__ или package.ver или любое количество других возможностей
Joran Beasley 17 окт. 2012, в 18:16
Я думал, что девизом питона было «есть только один способ сделать это»;)?
Ed Randall 12 авг. 2014, в 11:51
rosuav 12 сен.
2014, в 03:59
Показать ещё 2 комментария
Если вы хотите получить информацию о своих установленных дистрибутивах python и не хотите использовать консоль или консоль cmd для нее, а скорее через код python, вы можете использовать следующий код (проверенный с помощью python 3.4):
Пишу реальную программу. Парсинг текстового файла. Python + Pandas + Excel.
import pip #needed to use the pip functions for i in pip.get_installed_distributions(local_only=True): print(i)
Функциональный вызов pip.get_installed_distributions(local_only=True) возвращает итерабельность, и из-за функции for-loop и print функции элементы, содержащиеся в iterable, распечатываются, разделенные новыми строковыми символами ( n ). Результат будет (в зависимости от ваших установленных дистрибутивов) выглядеть примерно так:
cycler 0.9.0 decorator 4.0.4 ipykernel 4.1.0 ipython 4.0.0 ipython-genutils 0.1.0 ipywidgets 4.0.3 Jinja2 2.8 jsonschema 2.5.1 jupyter 1.0.0 jupyter-client 4.1.1 #. and so on.
frosty 31 окт. 2015, в 23:59
Поделиться
Это не работает в пипе 10.0.1
exhuma 27 июнь 2018, в 06:56
Almenon 14 июль 2018, в 23:16
Каково состояние pkg_resources ? AFAICR это часть setuptools . Не pip . Можем ли мы с уверенностью предположить, что setuptools всегда будет доступен только в зависимости от pip ?
exhuma 17 июль 2018, в 08:04
Показать ещё 1 комментарий
Вы можете попробовать: Желток
Для установки желтка попробуйте:
easy_install yolk
Yolk — это инструмент Python для получения информации об установленном Python пакеты и пакеты запросов, доступные на PyPI (пакет Python Index).
Вы можете видеть, какие пакеты активны, неактивны или находятся в разработке режиме и покажите вам, какие новые версии доступны для запросов PyPI.
llazzaro 09 дек. 2012, в 06:04
Поделиться
Это тоже приятно — спасибо!
jsalonen 17 дек.
2012, в 07:14
Я обычно использую pip для этой задачи в данный момент, но у меня есть очень старый проект, в который я не готов добавить дистрибутив, и я вспомнил, что там был такой инструмент. Не мог вспомнить, как это называлось, хотя . Это было это!
meshantz 11 окт. 2013, в 16:00
Он не поддерживает Python 3 (только что установлен из pip и получил ошибки во время выполнения)
Ohad Cohen 28 апр. 2018, в 13:57
Показать ещё 1 комментарий
из командной строки
python -c help(‘modules’)
может использоваться для просмотра всех модулей и для определенных модулей
python -c help(‘os’)
Для Linux ниже будет работать
python -c «help(‘os’)»
Npradhan 24 фев. 2016, в 13:43
Поделиться
Это работает на окнах. В Linux он выдает ошибку: -bash: syntax error near unexpected token `(‘
AjayKumarBasuthkar 11 март 2016, в 15:24
да! вы должны использовать pip в качестве менеджера пакетов python (http://pypi.python.org/pypi/pip)
с установленными пакетами, вы можете сделать
pip freeze
и он отобразит все установленные пакеты. Вероятно, вы также должны использовать virtualenv и virtualenvwrapper. Когда вы начинаете новый проект, вы можете сделать
mkvirtualenv my_new_project
и затем (внутри этого виртуального), do
pip install all_your_stuff
Таким образом, вы можете workon my_new_project , а затем pip freeze посмотреть, какие пакеты установлены для этого виртуального/проекта.
➜ ~ mkvirtualenv yo_dude New python executable in yo_dude/bin/python Installing setuptools. done. Installing pip. done. virtualenvwrapper.user_scripts creating /Users/aaylward/dev/virtualenvs/yo_dude/bin/predeactivate virtualenvwrapper.user_scripts creating /Users/aaylward/dev/virtualenvs/yo_dude/bin/postdeactivate virtualenvwrapper.user_scripts creating /Users/aaylward/dev/virtualenvs/yo_dude/bin/preactivate virtualenvwrapper.user_scripts creating /Users/aaylward/dev/virtualenvs/yo_dude/bin/postactivate virtualenvwrapper.user_scripts creating /Users/aaylward/dev/virtualenvs/yo_dude/bin/get_env_details (yo_dude)➜ ~ pip install django Downloading/unpacking django Downloading Django-1.4.1.tar.gz (7.7Mb): 7.7Mb downloaded Running setup.py egg_info for package django Installing collected packages: django Running setup.py install for django changing mode of build/scripts-2.7/django-admin.py from 644 to 755 changing mode of /Users/aaylward/dev/virtualenvs/yo_dude/bin/django-admin.py to 755 Successfully installed django Cleaning up. (yo_dude)➜ ~ pip freeze Django==1.4.1 wsgiref==0.1.2 (yo_dude)➜ ~
или если у вас есть пакет python с файлом requirements.pip,
mkvirtualenv my_awesome_project pip install -r requirements.pip pip freeze
Источник: overcoder.net
Установленные библиотеки в Python 3
Небольшое справочное руководство позволяющие ответить на часто возникающий вопрос у новичков, какие установленные библиотеки в Python?
Введение
В процессе обучения программированию на языке Python новички частенько засоряют глобальное окружение языка установкой кучи разных библиотек. Но рано или поздно любопытство берет вверх и хочется посмотреть что там уже установлено. На самом деле задача очень простая и не стоит даже целой статьи, но все таки я часто вижу этот вопрос в телеграм каналах посвещенных Python разработке.
На самом деле существует два способа решения этой задачи, рассмотрим оба.
Способы посмотреть установленные библиотеки
Как я и сказал выше существует два способа проверить установленные библиотеки, рассмотрим их ниже
Используя pip
Самый простой, быстрый и эффективный вариант узнать какие библиотеки установлены в вашем Python выполнить следующую команду
pip freeze
Вывод программы можем быть весьма огромным как в моем случае. Мои установленные библиотеки :
aiodns==2.0.0 aiogram==2.11.2 aiohttp==3.7.3 appdirs==1.4.4 async-timeout==3.0.1 attrs==20.3.0 Babel==2.9.0 beautifulsoup4==4.9.3 black==20.8b1 brotlipy==0.7.0 cchardet==2.1.7 certifi==2020.12.5 cffi==1.14.4 chardet==3.0.4 click==7.1.2 flake8==3.8.4 idna==2.10 isort==5.7.0 joblib==1.0.1 loguru==0.5.3 lxml==4.6.2 mccabe==0.6.1 multidict==5.1.0 mypy-extensions==0.4.3 nltk==3.5 pathspec==0.8.1 pycares==3.1.1 pycodestyle==2.6.0 pycparser==2.20 pydeepl==0.13 PyExecJS==1.5.1 pyflakes==2.2.0 pytz==2020.5 regex==2020.11.13 requests==2.25.1 six==1.15.0 soupsieve==2.1 textblob==0.15.3 toml==0.10.2 tqdm==4.56.2 translators==4.7.13 typed-ast==1.4.2 typing-extensions==3.7.4.3 urllib3==1.26.2 yarl==1.6.3
Я очень долго не смотрел что у меня твориться в глобальном окружении, т.к часто пишу приложения для докер-контейнеров.
В глобальном окружении я стараюсь держать несколько библиотек, isort, flake8 и black.
Используя файловую систему
Python всегда устанавливает свои библиотеки в системную папку. Под рукой у меня сейчас есть только macOS и debian Linux, напишу пути для обоих OS
# debian /usr/lib/python3.7/ # macOS /Library/Frameworks/Python.framework/Versions/3.9/lib/
Заключение
Сегодня мы узнали как посмотреть установленные библиотеки в Python двумя разными способами, надеюсь вам понравилось — пишите комментарии.
Источник: egorovegor.ru
Где установлены пакеты Python
- Используйте команду pip для вывода списка установленных пакетов
- Используйте команду conda для вывода списка локально установленных пакетов
- Используйте команду python для вывода списка установленных пакетов
- Используйте модуль distutils.sysconfig для вывода списка установленных пакетов
- Используйте модуль sysconfig для вывода списка установленных пакетов
Пакет в Python можно определить как каталог, содержащий файлы Python. Эти файлы обычно представляют собой модули Python.
По мере роста и усложнения программы аналогичные модули помещаются в пакет, что помогает упростить управление программой и улучшить читаемость. Этот подход часто называют модульным программированием, и в его реализации помогают пакеты.
Matplotlib tutorial 2 | All about L.
Please enable JavaScript
Файл __init__.py должен содержаться внутри каталога, чтобы Python считал его пакетом. Этот файл обычно содержит код инициализации пакета, но его можно оставить пустым.
В этом руководстве будут рассмотрены различные методы поиска каталогов, в которых установлены пакеты python.
Используйте команду pip для вывода списка установленных пакетов
В Python пакеты можно устанавливать как глобально, так и локально.
Пакет, установленный глобально, доступен всем пользователям системы. Тот же пакет, установленный локально, будет доступен только пользователю, который установил его вручную.
По умолчанию команда pip устанавливает пакеты глобально.
В следующем коде используется команда pip для вывода списка глобально установленных пакетов.
# we can also use «pip list command» pip freeze
Хотя по умолчанию команда pip устанавливает пакеты глобально, пакеты, которые были вручную установлены локально, также можно увидеть с помощью этой команды.
В следующем коде используется команда pip для вывода списка пакетов, установленных локально.
# we can also use «pip list —user» pip freeze —user
Используйте команду conda для вывода списка локально установленных пакетов
Этот метод работает только для программистов, работающих в Anaconda IDE. Можно перечислить локально установленный пакет в среде conda . Чтобы выполнить это, нам просто нужно написать одну строку кода в приглашении Anaconda.
В следующем коде для вывода списка пакетов, установленных локально, используется conda .
conda list
Используйте команду python для вывода списка установленных пакетов
Команду python можно использовать для поиска каталогов на сайте пакета.
Пакеты глобальных сайтов
Пакеты глобального сайта перечислены в sys.path .
В следующем коде используется команда python для вывода списка глобально установленных пакетов.
python -m site
Модуль site также можно использовать вместе с командой python для получения более точного и краткого списка пакетов. Этот метод использует getsitepackages() из модуля site .
Следующий код использует команду python вместе с модулем site для вывода списка глобально установленных пакетов.
python -c ‘import site; print(site.getsitepackages())’
Обратите внимание, что функция getsitepackages() недоступна в virtualenv.
Пакеты, установленные локально
Локальные пакеты устанавливаются в каталог пакетов сайта per-user (PEP 370).
В следующем коде используется команда python для вывода списка локально установленных пакетов.
python -m site —user-site
Используйте модуль distutils.sysconfig для вывода списка установленных пакетов
Пакет distutils может использоваться для предоставления функций для установки и встраивания дополнительных модулей в установку Python. В этом случае его также можно использовать для вывода списка пакетов.
В следующем коде используется distutils.sysconfig для вывода списка глобально установленных пакетов.
python -c «from distutils.sysconfig import get_python_lib; print(get_python_lib())»
Единственный недостаток заключается в том, что он указывает нам на каталог dist-packages или пакеты, автоматически устанавливаемые операционной системой.
Используйте модуль sysconfig для вывода списка установленных пакетов
В Python 3 и выше доступен модуль sysconfig для вывода списка установленных пакетов.
Модуль sysconfig не следует путать с подмодулем distutils.sysconfig , упомянутым выше. Последний — это совершенно другой модуль, и в нем отсутствует функция get_paths , которая здесь будет использоваться.
Следующий код использует модуль sysconfig для вывода списка установленных пакетов.
python -c «import sysconfig; print(sysconfig.get_path(‘purelib’))»
Здесь мы используем путь purelib , куда устанавливаются стандартные пакеты Python с помощью таких инструментов, как pip .
Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.
Сопутствующая статья — Python Installation
- Установите Mysqldb с помощью pip
- Установите Pip3 на Mac
Источник: www.delftstack.com