command line
Как проверить,установлен ли модуль в Python,и установить его при необходимости
В терминале,после запуска Python,как я узнаю,какие модули присутствуют в python? Предположим,мне нужно изучить модули NumPy и SciPy.
- Как я установлю его,если он не установлен?
- Как я узнаю,установлен ли он уже?
Как узнать, установлен ли модуль python в системе: вы можете сделать очень простой тест в терминале,
$ python -c "import math"
$ echo $?
0 # математический модуль существует в системе
$ python -c "import numpy"
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named numpy
$ echo $?
1 # модуль numpy не существует в системе
Как мне установить его,если он не установлен
Вы можете установить определенный модуль, загрузив соответствующие пакеты из репозитория, например, вы можете установить scipy
как,
sudo apt-get install python-scipy ## for Python2
sudo apt-get install python3-scipy ## for Python3
В качестве альтернативы вы также можете установить модуль python, используя python-pip
, как это было предложено Заком Титаном в комментарии ниже . Чтобы установить numpy
, вы можете использовать
pip install numpy
Предупреждение: настоятельно рекомендуется устанавливать python-модули только с использованием официального репозитория Ubuntu и не использовать метод pip
от именисуперпользователя (т. е. от имени пользователя root
или с использованием sudo
). В некоторых случаях это может сделать вашу систему непригодной для использования, сломав системный python.
Как установить пакеты с помощью pip
в локальную виртуальную среду.
В случае, если мы не хотим нежелательно импортировать рассматриваемый модуль (что произойдет в операторе try
), мы можем использовать sys.modules
для тестирования модулей, которые были установлены и импортированы ранее.
В выпуске оболочки python:
>>> import sys
Затем проверьте наличие установленных модулей:
>>> 'numpy' in sys.modules
True
>>> 'scipy' in sys.modules
False
Обратите внимание, что только те модули, которые были импортированы ранее, дают True
в этом тесте, все остальные модули (даже если они установлены) дают False.
Другой альтернативой использованию try
import
в консоли Python является вызов встроенной функции help()
. Это не даст документации для неустановленных модулей, например
>>> help('scipy')
no Python documentation found for 'scipy'
Вывод очень длинных справочных документов установленных модулей можно прервать с помощью кнопкиQ.
Теперь для установки отсутствующих модулей рекомендуется использовать управление пакетами Ubuntu (а не путь пипа Python), потому что нам нужен root-доступ, а также чтобы не испортить нашу систему, сильно зависящую от Python. Для рассматриваемого модуля это будет, например:
sudo apt-get install python-scipy ## for Python2
sudo apt-get install python3-scipy ## for Python3
После установки мы можем добавить их в словарь sys.modules
, импортировав их один раз.
Есть ли способ создать несколько каталогов одновременно с помощью mkdir
Быстрый инструмент для создания видеогалерей с эскизами для командной строки
Как получить URL из вкладки Firefox в терминале с помощью командной строки
Настройка команды env для сценариев bash
Как я могу компилировать,запускать и декомпилировать код C#в терминале Ubuntu
когда вы входите в оболочку,какая программа обрабатывает оценку учетных данных