Capturer la sortie standard en Python
En Python, il est souvent utile de capturer la sortie imprimée sur la sortie standard (stdout) pour diverses raisons , par exemple en l'enregistrant pour un traitement ou un test ultérieur. Un scénario courant implique l'appel d'une fonction à partir d'une bibliothèque, telle que do_something(my_object), qui imprime les informations sur la sortie standard.
Pour capturer le résultat de cet appel de fonction, l'approche suivante peut être utilisée :
Implémenter un gestionnaire de contexte de concaténation (Capturer) :
Utilisez le gestionnaire de contexte :
Obtenir la sortie capturée :
Exemple d'utilisation :
<code class="python">from contextlib import redirect_stdout # redirect_stdout is only available in Python 3.4 or later def do_something(my_object): print('stdout info') with redirect_stdout(StringIO()) as stdout: do_something(my_object) captured_output = stdout.getvalue()</code>
Utilisation de la syntaxe Python 3.4 :
<code class="python">with StringIO() as output: with redirect_stdout(output): do_something(my_object) captured_output = output.getvalue()</code>
En suivant ces étapes, vous pouvez facilement capturer la sortie standard d'un appel de fonction Python, vous permettant d'utiliser les informations imprimées à des fins de traitement, de débogage ou de test ultérieurs.
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!