Pour fournir une autre réponse, par souci d'exhaustivité :
Vous pouvez (ab)utiliser le -m
option. Extrait de la page de manuel de Python :
-m module-name
Searches sys.path for the named module and runs the correspond
ing .py file as a script.
Ce qui nous donnera :
$ python2 -m numpy
/sbin/python2: No module named numpy.__main__; 'numpy' is a package and cannot be directly executed
$ python2 -m math
/sbin/python2: No code object available for math
Mais pour des modules inexistants, il nous donnera :
$ python2 -m doesnt_exist
/sbin/python2: No module named doesnt_exist
Nous pourrions utiliser grep
pour correspondre à cela :
$ python2 -m doesnt_exist |& grep -q 'No module named' && echo 'Nope' || echo 'Yup'
Nope
$ python2 -m math |& grep -q 'No module named' && echo 'Nope' || echo 'Yup'
Yup
C'est un peu bidouillé, et ce n'est pas ce qu'il faut faire. -m
mais c'est la méthode méthode qui nécessite le moins de saisie si vous voulez un test rapide :-)