Compteurs de console en Python
Q : Comment puis-je créer des compteurs de console en Python, similaires à ceux trouvés dans les programmes C/C, où la sortie est remplacée par une valeur de mise à jour ?
A : Mise à jour simple de la chaîne :
Une solution simple consiste à écrire "r" avant la chaîne et à omettre le caractère de nouvelle ligne . Si la longueur de la chaîne reste cohérente, cette méthode peut suffire.
Exemple :
<code class="python">sys.stdout.write("\rDoing thing %i" % i) sys.stdout.flush()</code>
Barre de progression avancée :
Pour une approche plus sophistiquée, envisagez une barre de progression. Voici un exemple :
<code class="python">def start_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 x = int(x * 40 // 100) sys.stdout.write("#" * (x - progress_x)) sys.stdout.flush() progress_x = x def end_progress(): sys.stdout.write("#" * (40 - progress_x) + "]\n") sys.stdout.flush()</code>
Pour utiliser cette barre de progression, appelez start_progress(title) avec une description de l'opération, puis appelez progress(x) avec le pourcentage, et enfin end_progress() pour terminer l'opération .
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!