Python вывести список установленных библиотек

Python 3: Как узнать версию библиотеки Pandas, Numpy

Вариант 1. Узнаем версию библиотеки в скрипте Python

Для того, чтобы узнать версию библиотеки, необходимо вбить следующую команду (например для Pandas):

Пример для Numpy:

Вариант 2. Проверить с помощью pip менеджера пакетов

С помощью менеджера пакетов pip можно проверить версию установленных библиотек, для этого используются команды:

  • pip list
  • pip freeze
  • pip show pandas

pip list

Выведет список установленных пакетов, включая редактируемые.

Пишем в консоли команду:

Результат:

pip freeze

Выводит установленные пакеты, которые ВЫ установили с помощью команды pip (или pipenv при ее использовании) в формате требований.

Вы можете запустить: pip freeze > requirements.txt на одной машине, а затем на другой машине (в чистой среде) произвести инсталляцию пакетов: pip install -r requirements.txt .

Таким образом вы получите идентичную среду с точно такими же установленными зависимостями, как и в исходной среде, в которой вы сгенерировал файл requirements.txt.

Результат:

pip show

Выводит информацию об одном или нескольких установленных пакетах.

Пример:

Результат:

Anaconda — conda list

Если вы используете Anaconda, то вы можете проверить список установленных пакетов в активной среде с помощью команды conda list .

Источник

Где хранятся модули Python?

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

  1. Есть ли способ получить список модулей Python, доступных (т.е. установленных) на компьютере?
  2. Я использую Ubuntu Karmic и Synaptic для управления пакетами. Я только что установил модуль python. Где на самом деле хранится код модуля на моей машине? (есть ли [рекомендуемое] место по умолчанию для хранения модулей)?

7 ответов

1) Есть ли способ получить список доступных модулей Python (т.е. установленных) на mchine?

Это работает для меня:

2) Где на самом деле хранится код модуля на моей машине?

Обычно в /lib/site-packages в вашей папке Python. (По крайней мере, на Windows.)

Вы можете использовать sys.path , чтобы узнать, в каких каталогах ищутся модули.

  1. Вы можете перебирать каталоги, перечисленные в sys.path , чтобы найти все модули (кроме встроенных).
  2. Вероятно, это будет где-то около /usr/lib/pythonX.X/site-packages (опять же, смотрите sys.path ). И подумайте об использовании собственного управления пакетами Python (через pip или easy_install , плюс yolk ) вместо этого пакеты в репозиториях, поддерживаемых дистрибутивами Linux, как правило, устарели.

Если вы используете conda или pip для установки модулей, вы можете использовать

Отобразить все модули. Это отобразит все модули в самом терминале и будет намного быстрее, чем

Вы можете найти код модуля, сначала перечислив модули:

Это выдает список модулей, которые Python может импортировать. Внизу этого списка есть фраза:

Введите любое имя модуля, чтобы получить дополнительную помощь. Или введите «модули спам» для поиска модулей, чье имя или сводка содержат строку «спам».

Чтобы найти местоположение модуля:

Здесь много информации. Прокрутите вниз, чтобы найти его местоположение

Копировать ссылку. Чтобы увидеть код после выхода из Python REPL:

В командной строке python сначала импортируйте тот модуль, для которого вам нужно местоположение.

Например, чтобы узнать местоположение «pygal»:

На машине Windows модули Python расположены по адресу (системный диск и версия Python могут отличаться):

1) Использование функции справки

Войдите в приглашение Python и введите следующую команду:

Это перечислит все модули, установленные в системе. Вам не нужно устанавливать никаких дополнительных пакетов для их перечисления, но вам нужно вручную искать или фильтровать нужный модуль из списка.

2) Использование заморозки в пипсах

Даже если вам нужно установить дополнительные пакеты, чтобы использовать это, этот метод позволяет вам легко искать или фильтровать результат с помощью команды grep . например < < Х1 >> .

Вы можете использовать любой удобный для вас метод.

Источник

Как я могу получить список локально установленных модулей Python?

Я хотел бы получить список модулей Python, которые находятся в моей установке Python (сервер UNIX).

Как вы можете получить список модулей Python, установленных на вашем компьютере?

ОТВЕТЫ

Ответ 1

Решение

Не используйте с pip> 10.0!

Мои 50 центов за получение списка pip freeze пипса -like из скрипта Python:

Как (слишком длинный) один лайнер:

Объем

Это решение применяется к области системы или к области виртуальной среды и охватывает пакеты, установленные с помощью setuptools , pip и (не дай бог) easy_install .

Мой вариант использования

Я добавил результат этого вызова на свой флеш-сервер, поэтому, когда я вызываю его с помощью http://example.com/exampleServer/environment я получаю список пакетов, установленных на сервере virtualenv. Это делает отладку намного проще.

Предостережения

Я заметил странное поведение этой техники — когда интерпретатор Python вызывается в том же каталоге, что и файл setup.py , он не перечисляет пакет, установленный в setup.py .

Действия по воспроизведению:

Мы ведем себя как setup.py в /tmp/behave :

Установите пакет python из репозитория git

Если мы запустим вышеупомянутое решение из /tmp

Если мы запустим вышеупомянутое решение из /tmp/behave

behave==1.2.5a1 отсутствует из второго примера, потому что рабочий каталог содержит behave setup.py файл.

Я не смог найти ссылки на этот вопрос в документации. Возможно, я открою ошибку для этого.

Ответ 2

в командной строке Python.

Ответ 3

Теперь, эти методы я пробовал самостоятельно, и я получил именно то, что было рекламировано: Все модули.

Увы, действительно вам все равно, о stdlib, вы знаете, что у вас есть с установкой python.

На самом деле, я хочу, чтобы материал, который я установил.

Что на самом деле, на удивление, отлично работало:

Я говорю «удивительно», потому что инструмент установки пакета — это то место, где можно было бы найти эту функциональность, хотя и не под названием «freeze», но упаковка python настолько странная, что я ошеломлен тем, что этот инструмент имеет смысл. Pip 0.8.2, Python 2.7.

Ответ 4

В ipython вы можете ввести » import Tab «.

В стандартном интерпретаторе Python вы можете ввести » help(‘modules’) «.

В командной строке вы можете использовать pydoc modules .

Ответ 5

Начиная с версии версии 1.3, у вас есть доступ к:

Кажется, что это синтаксический сахар для «замораживания контура». В нем будут перечислены все модули, относящиеся к вашей установке или virtualenv, а также их номера версий. К сожалению, он не отображает текущий номер версии любого модуля и не моет ваши блюда или не блещет вашими ботинками.

Ответ 6

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

который показывает все модули, запущенные на вашем питоне.

Для всех встроенных модулей используйте:

Что такое dict, содержащий все модули и объекты импорта.

Ответ 7

В обычной оболочке просто используйте

Ответ 8

Начиная с 10 пункта, принятый ответ больше не будет работать. Команда разработчиков удалила доступ к подпрограмме get_installed_distributions . В setuptools есть альтернативная функция для того же. Вот альтернативная версия, которая работает с pip 10:

Пожалуйста, дайте мне знать, будет ли это работать или не будет работать в предыдущих версиях pip.

Ответ 9

Если нам нужно вывести список установленных пакетов в оболочке Python, мы можем использовать команду help следующим образом

Ответ 10

Я обычно использую pip list , чтобы получить список пакетов (с версией).

Конечно, это работает и в виртуальной среде. Чтобы показать, что установлено только в виртуальной среде (не в глобальных пакетах), используйте pip list —local .

Здесь документация, показывающая все доступные опции pip list , с несколькими хорошими примерами.

Ответ 11

Очень простой поиск с использованием pkgutil.iter_modules

Ответ 12

Я столкнулся с пользовательским установленным python 2.7 на OS X. Он потребовал, чтобы X11 отображал установленные модули (как с помощью help, так и pydoc).

Чтобы иметь возможность перечислять все модули без установки X11, я запускал pydoc в качестве http-сервера, то есть:

Затем можно направить Safari на http://localhost:12345/ , чтобы увидеть все модули.

Ответ 13

в окнах, введите это в cmd

Ответ 14

Это было вдохновлено ответом Адама Матана (принятым):

который затем распечатывает таблицу в виде

что позволяет вам легко определить, какие пакеты вы установили с использованием и без использования sudo .

Заметка в стороне: я заметил, что когда я устанавливаю пакет один раз с помощью sudo и один раз без него, один имеет приоритет, так что другой не отображается в списке (отображается только одно местоположение). Я считаю, что в списке будет только один из них в локальном каталоге. Это может быть улучшено.

Ответ 15

Помимо использования pip freeze , я устанавливал yolk в своих виртуальных средах.

Ответ 16

  • чтобы получить все доступные модули, запустите sys.modules
  • чтобы получить все установленные модули (чтение: установлено pip ), вы можете посмотреть pip.get_installed_distributions()

Для второй цели, пример кода:

Ответ 17

Это решение основано на модулях importlib и pkgutil и работает с CPython 3.4 и CPython 3.5, но не поддерживает CPython 2.

объяснение

  1. sys.builtin_module_names — имена всех встроенных модулей (см. мой ответ здесь)
  2. pkgutil.iter_modules() — возвращает информацию обо всех доступных модулях
  3. importlib.util.find_spec() — возвращает информацию об импорте модуля, если существует
  4. BuiltinImporter — импортер для встроенных модулей (документов)
  5. SourceFileLoader — импортер для стандартного модуля Python (по умолчанию имеет расширение *.py) (документы)
  6. ExtensionFileLoader — импортер для модулей в виде разделяемой библиотеки (написано на C или C++)

Полный код

использование

Для CPython3.5 (усеченный)

Для CPython3.4 (усечено)

Ответ 18

Если у вас установлен дистрибутив anaconda python, вы также можете использовать

в дополнение к решениям, описанным выше.

Ответ 19

Ответ 20

pip freeze делает все, чтобы найти пакеты, однако можно просто написать следующую команду, чтобы перечислить все пути, в которых находятся пакеты python.

Ответ 21

Есть много способов снять кожу с кошки.

Самый простой способ — использовать функцию pydoc непосредственно из оболочки:
pydoc modules

Но для получения дополнительной информации используйте инструмент под названием pip-date, который также сообщит вам даты установки.
pip install pip-date

Ответ 22

Есть много идей, вначале я размышляю над этими двумя:

зернышко

помочь ( «модули»)

минусы: вывод на консоль; со сломанными модулями (см. Ubuntu. ) можно segfault

Мне нужен простой подход, использующий базовые библиотеки и совместимый со старым Python 2.x

В каталоге исходных текстов документации в 2.5 скрыт небольшой скрипт, в котором перечислены все доступные модули для установки на Python.

использует только imp, sys, os, re, time

предназначен для работы на Python 1.5.2 и новее

исходный код действительно компактен, так что вы можете легко переделать его, например, передать список исключений с ошибочными модулями (не пытайтесь импортировать их)

Ответ 23

Мне нужно было найти конкретную версию пакетов, доступных по умолчанию в AWS Lambda. Я сделал это с коллажем идей с этой страницы. Я делюсь этим для потомков.

Я обнаружил, что предоставленная библиотека boto3 устарела, и я не виноват, что мой код не работает. Мне просто нужно было добавить boto3 и botocore в мой проект. Но без этого я бы бился головой, думая, что мой код плохой.

То, что я обнаружил, также отличалось от того, что они официально публикуют. На момент написания этого:

  • Операционная система — Amazon Linux
  • AMI — amzn-ami-hvm-2017.03.1.20170812-x86_64-gp2
  • Ядро Linux — 4.14.77-70.59.amzn1.x86_64
  • AWS SDK для JavaScript — 2.290.0\
  • SDK для Python (Boto 3) — 3-1.7.74 botocore-1.10.74

Ответ 24

Если вы используете Python 3

Я только что попробовал на Ubuntu, и, похоже, сработало

Debian/Ubuntu: sudo apt-get install python3-matplotlib

Fedora: sudo dnf install python3-matplotlib

Red Hat: sudo yum install python3-matplotlib

Арка: sudo pacman -S python-matplotlib

Ответ 25

Для тех, кто интересуется, как вызвать pip list из программы Python, вы можете использовать следующее:

Источник

Как вывести список всех установленных пакетов и их версий в Python?

Есть ли способ в Python перечислить все установленные пакеты и их версии?

Я знаю, что могу зайти внутрь python/Lib/site-packages и посмотреть, какие файлы и каталоги существуют, но я нахожу это очень неловким. То, что я ищу, похоже на npm list , т.е. npm-ls.

8 ответов

Если у вас есть pip install и вы хотите увидеть, какие пакеты были установлены с вашими инструментами установки, вы можете просто вызвать это:

Он также будет включать номера версий для установленных пакетов.

Обновить

Pip был обновлен и теперь производит тот же вывод, что и pip freeze , вызывая:

Примечание

Выходные данные из pip list отформатированы по-разному, поэтому, если у вас есть какой-то сценарий оболочки, который анализирует выходные данные (возможно, чтобы получить номер версии) freeze и хотите изменить свой сценарий на вызов list , вам нужно будет изменить код разбора.

Вот способ сделать это, используя PYTHONPATH вместо абсолютного пути вашей библиотеки libs dir:

Если вы хотите получить информацию об установленных дистрибутивах Python и не хотите использовать для этого консоль или терминал cmd, а использовать код Python, вы можете использовать следующий код (протестирован с Python 3.4):

Вызов функции pip.get_installed_distributions(local_only=True) возвращает итерацию, а из-за цикла for и функции print элементы, содержащиеся в итерации, выводятся через символы новой строки ( \n ). Результат будет (в зависимости от установленных дистрибутивов) выглядеть примерно так:

Если это необходимо для запуска из Python, вы можете просто вызвать подпроцесс

Для запуска этого в более поздних версиях pip (протестировано на pip==10.0.1 ) используйте следующее:

Да! вы должны использовать pip в качестве менеджера пакетов python ( http://pypi.python.org/pypi/pip )

С установленными пакетами pip, вы можете сделать

И он перечислит все установленные пакеты. Возможно, вам также следует использовать virtualenv и virtualenvwrapper. Когда вы начинаете новый проект, вы можете сделать

А затем (внутри этого virtualenv) сделать

Таким образом, вы можете workon my_new_project , а затем pip freeze посмотреть, какие пакеты установлены для этого virtualenv / проекта.

Или если у вас есть пакет Python с файлом require.pip,

Сделает свое дело

Вы можете попробовать: желток

Для установки желток попробуйте:

Yolk — это инструмент Python для получения информации об установленных пакетах Python и запроса пакетов, доступных в PyPI (индекс пакетов Python).

Вы можете увидеть, какие пакеты активны, неактивны или находятся в режиме разработки, и показать, какие более новые версии доступны, запрашивая PyPI.

Источник

Читайте также:  Как вывести тюльпаны штатной магнитолы
Оцените статью