115 votes

Comment puis-je vérifier si un module est installé dans Python, et l'installer si nécessaire ?

En terminal, après avoir démarré Python, comment vais-je savoir quels sont les modules présents dans Python ? Supposons que je doive apprendre les modules NumPy et SciPy.

  • Comment vais-je l'installer s'il n'est pas installé ?
  • Comment puis-je savoir s'il est déjà installé ?

1voto

GuSuku Points 111

Au moment où j'écris ces lignes, pip show ... semble être le moyen le plus simple : https://pip.pypa.io/en/stable/reference/pip_show/

Mais il est silencieux (c'est-à-dire qu'il ne renvoie rien) lorsque le paquet n'est pas installé.

0voto

htaccess Points 1237

Je ferais quelque chose comme ça :

#!/bin/bash

pymodules=(
    requests
    termcolor
)

for module in "${pymodules[@]}"; do
    if python3 -c "import pkgutil; exit(1 if pkgutil.find_loader(\"$module\") else 0)"; then
        pip3 install --user "$module"
    fi
done

Il installera tous les modules qui manquent dans la base de données. pymodules le tableau.

使用方法 --user permet à pip d'installer les paquets dans votre répertoire personnel au lieu d'un répertoire système tel que /usr/local/lib/python3.7/ Cette fonction est utile car elle ne nécessite pas de privilèges spéciaux et permet de conserver une installation propre du système.

0voto

jdhao Points 101

C'est ce que j'ai trouvé :

if [[ ! $(pip list|grep "numpy") ]]; then
    pip install numpy
fi

Il va vérifier si numpy a été installé sur votre système, si non, il va installer numpy en utilisant pip.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X