(Récupérer la sortie d'une commande externe à partir du script ; saleté de limite de caractères pour le titre du post
)
Salut,
J'ai décidé de refaire un peu joujou avec Python, et voilà que je tombe sur un problème qui m'était encore jamais arrivé !
En gros, je veux, depuis mon script Python, exécuter un autre script/whatever (pas du Python, celui-là) ; du coup, ok, pas de problème, la faq de python.développez.com me propose os.system qui marche à merveille.
Sauf que voilà, ce que je veux exécuter affiche des choses pertinentes (
) sur la sortie standard, et ce qui m'intéresse, c'est de récupérer ceci pour l'utiliser par la suite. (Un peu comme si j'utilisais un pipe, quoi)
Du coup, je me dis : facile, on va récupérer ce que retourne os.system dans une variable, c'est sûrement la sortie standard. Je teste, et là POUF, à la place d'une belle chaîne joliment formatée, je reçois un 0 !
(Si, si, ce que j'ai exécuté a donc bel et bien fonctionné correctement
)
Du coup, voilà ma question : y a-t-il une commande qui permette d'évaluer un programme externe au script, et qui retourne la sortie standard du-dit programme ?
(Et subsidiairement : cette commande arrive-t-elle à détourner temporairement la sortie standard pour que seul mon script arrive à voir la sortie du-dit programme, ici encore à la manière d'un pipe ?)
Merci pour toute réponse ! (Du moins, pour celles qui sont constructives et sympa
)