Maison >développement back-end >Tutoriel Python >Comment puis-je supprimer l'insertion de nouvelle ligne dans les fonctions d'entrée ?

Comment puis-je supprimer l'insertion de nouvelle ligne dans les fonctions d'entrée ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-27 10:04:02301parcourir

How Can I Suppress the Newline Insertion in Input Functions?

Surmonter l'insertion de nouvelle ligne dans les fonctions d'entrée

Défi : Supprimer la nouvelle ligne automatiquement ajoutée après les fonctions d'entrée (par exemple, raw_input ou input).

Objectif :Modifier raw_input (équivalent à input dans Python 3.x) pour empêcher la création d'une nouvelle ligne après saisie utilisateur.

Solution :

Bien qu'il ne soit pas possible d'éliminer complètement l'insertion de nouvelle ligne dans raw_input, une solution de contournement intelligente existe. En utilisant des commandes de déplacement du curseur, nous pouvons essentiellement « rembobiner » le curseur sur la même ligne que l'invite de saisie.

Pour y parvenir, nous pouvons utiliser ce qui suit :

print('3[{}C3[1A'.format(len(x) + y))

où :

  • x est la longueur de l'entrée utilisateur.
  • y est la longueur de l'invite raw_input.

Explication :

La séquence 33[{}C fait déplacer le curseur d'un certain nombre d'espaces vers la droite ({} représente une valeur entière). Dans ce cas, nous le déplaçons à la fin de la saisie utilisateur, l'effaçant ainsi.

La séquence 33[1A déplace le curseur d'une ligne vers le haut, le ramenant à la position de l'invite.

Remarque : Cette méthode peut ne pas fonctionner sur tous les terminaux. Cependant, sur les terminaux compatibles (tels que Kubuntu 14.04), il fournit une solution pratique pour supprimer l'insertion de nouvelle ligne indésirable après raw_input ou input.

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