Impression d'une sortie continue sur une seule ligne
Le but de cette question est de générer du texte sur une seule ligne, en écrasant la sortie précédente, en créant un barre de progression en temps réel. Le code en question :
print os.path.getsize(file_name)/1024, 'KB / ', size, 'KB downloaded!'
Produit le résultat suivant :
1784 KB / KB 1829 downloaded! 1788 KB / KB 1829 downloaded!
Pour obtenir une sortie continue sur la même ligne, Python propose une solution simple. Voici le code modifié à l'aide du mot-clé end :
print(os.path.getsize(file_name)/1024+'KB / '+size+' KB downloaded!', end='\r')
Le mot-clé end précise le caractère à placer à la fin de la ligne imprimée. Par défaut, print() se termine par un caractère de nouvelle ligne (n), ce qui fait passer le curseur à la ligne suivante. Cependant, l'utilisation de end='r' insère à la place un caractère de retour chariot, ramenant le curseur au début de la ligne actuelle.
Cela permet une sortie continue sans avoir besoin d'importer le module sys. La fonction print() de Python propose de nombreux autres arguments de mots-clés qui peuvent simplifier les tâches de codage, telles que flush et file.
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!