Maison >développement back-end >Tutoriel Python >Comment puis-je écraser la sortie précédente dans la fonction « print() » de Python ?

Comment puis-je écraser la sortie précédente dans la fonction « print() » de Python ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-03 07:47:09586parcourir

How Can I Overwrite Previous Output in Python's `print()` Function?

Écrasement de la sortie précédente sur Stdout

En Python, le comportement par défaut de la fonction print() consiste à démarrer une nouvelle ligne après chaque invocation . Cependant, certains scénarios nécessitent d'écraser la sortie précédente sur la même ligne.

Écrasement simple

Pour écraser la ligne précédente, ajoutez « r » (retour chariot) au argument de fin de print(). Ce caractère de retour déplace le curseur au début de la ligne en cours sans en démarrer une nouvelle.

for x in range(10):
    print(x, end='\r')
print()

Nettoyage de ligne

Lorsque le nouveau texte est plus court que le ligne précédente, il peut laisser des restes de l'ancien texte. Pour effacer les caractères restants, ajoutez « x1b[1K » (effacer jusqu'à la fin de la ligne) à l'argument de fin.

for x in range(75):
    print('*' * (75 - x), x, end='\x1b[1K\r')
print()

Retour à la ligne longue

Retour à la ligne fait référence à la continuation automatique d'une ligne au-delà de sa fin de ligne. Pour empêcher le retour à la ligne et forcer les caractères successifs à écraser ceux existants, désactivez le retour à la ligne à l'aide de « x1b[7l » et réactivez-le à l'aide de « x1b[7h ».

print('\x1b[7l', end='')  # disable line wrap
print('\x1b[7h', end='')  # re-enable line wrap

Remarque : La réactivation du bouclage de ligne doit être effectuée manuellement pour éviter la rupture des bornes. De plus, ces solutions contrôlent uniquement la longueur de la ligne actuelle et ne débordent pas sur les lignes suivantes.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn