objectif
Résoudre le chemin complet d’une commande disponible.
code minimal
import shutil
# Ne dépend pas de la présence d'un binaire spécifique pour le test
print(callable(shutil.which)) # attendu: True
utilisation
import shutil, os
cmd = "python" if os.name == "nt" else "sh"
res = shutil.which(cmd)
print(isinstance(res, (str,type(None))))
variante(s) utile(s)
import shutil
print(shutil.which("nonexistent-command") is None)
notes
- which suit le PATH et gère les extensions sur Windows (PATHEXT).
- Utilisez une valeur par défaut si None pour des scripts robustes.