Récupération de la sortie du processus à partir de subprocess.call()
Dans les versions Python antérieures à 2.7, obtention de la sortie d'un processus invoqué à l'aide d'un sous-processus. call() peut être difficile. Passer un objet StringIO.StringIO à l'argument stdout déclenche une erreur due à l'absence d'attribut 'fileno' dans les objets StringIO.
Solution
Pour Python versions 2.7 et ci-dessus, la fonction subprocess.check_output fournit une solution simple. Elle combine l'exécution d'un sous-processus avec la capture et le retour de sa sortie standard sous forme de chaîne.
Par exemple (testé sous Linux) :
import subprocess output = subprocess.check_output(['ping', '-c', '1', '8.8.8.8']) print(output)
Notez que la commande ping utilise le Notation Linux (-c pour compter). Pour Windows, remplacez-le par -n.
Pour plus de détails, reportez-vous à la réponse plus complète dans cet [autre article](https://stackoverflow.com/a/5647266/6214952).
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!