J'aimerais détecter si python est installé sur un système Linux et si oui, quelle version de python est installée.
Comment puis-je le faire ? Existe-t-il quelque chose de plus gracieux que d'analyser la sortie de "python --version"
?
J'aimerais détecter si python est installé sur un système Linux et si oui, quelle version de python est installée.
Comment puis-je le faire ? Existe-t-il quelque chose de plus gracieux que d'analyser la sortie de "python --version"
?
Si vous avez besoin de vérifier si la version est au moins "une certaine version", alors je préfère une solution qui ne fait pas d'hypothèses sur le nombre de chiffres dans les parties de la version.
VERSION=$(python -V 2>&1 | cut -d\ -f 2) # python 2 prints version to stderr
VERSION=(${VERSION//./ }) # make an version parts array
if [[ ${VERSION[0]} -lt 3 ]] || [[ ${VERSION[0]} -eq 3 && ${VERSION[1] -lt 5 ]] ; then
echo "Python 3.5+ needed!" 1>&2
return 1
fi
Cela fonctionnerait même avec une numérotation comme 2.12.32 ou 3.12.0, etc. Inspiré par cette réponse .
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
4 votes
Pourquoi python --version n'est pas gracieux ? Peut-être /usr/bin/env python --version ?
5 votes
Ce que je voulais dire par "non gracieux", c'est que le format de la chaîne peut changer à l'avenir, ce qui invaliderait l'analyse de la chaîne.
1 votes
Python 2.4 renvoie une erreur pour
python --version
. Vous devez utiliserpython -V
.