Maison >développement back-end >Tutoriel Python >Comment remplacer la sortie de la console en Python ?
Remplacer la sortie de la console en Python
En Python, contrôler la sortie vers la console peut être difficile, surtout lorsque vous devez mettre à jour uniquement un partie des informations affichées. Cette question traite d'une solution pour remplacer la sortie actuelle de la console par un compteur de progression concis.
Une approche simple consiste à écrire un caractère de retour arrière ("r") suivi de la nouvelle chaîne sans caractère de nouvelle ligne. En faisant cela, seule la ligne la plus récente de la console est mise à jour. Ceci est illustré dans l'extrait de code ci-dessous :
<code class="python">sys.stdout.write("\rDoing thing %i" % i) sys.stdout.flush()</code>
Cependant, pour une barre de progression plus sophistiquée, vous pouvez implémenter une fonction personnalisée pour suivre la progression et afficher une barre dynamique basée sur le pourcentage de progression. Voici un exemple :
<code class="python">def progress(title): global progress_x sys.stdout.write(title + ": [&" + "-" * 40 + "]") + chr(8) * 41 sys.stdout.flush() progress_x = 0 def progress(x): global progress_x progress_x = int(x * 40 // 100) sys.stdout.write("#" * (progress_x - progress_x)) sys.stdout.flush() def stop_progress(): sys.stdout.write("#" * (40 - progress_x) + "]\n") sys.stdout.flush()</code>
Pour utiliser cette fonction, appelez start_progress avec la description de l'opération, progress avec le pourcentage, et enfin stop_progress pour afficher la barre de progression complète dans la console.
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!