Suppression des nouvelles lignes dans les entrées utilisateur à l'aide des fonctions de saisie
Bien que les instructions d'impression puissent être empêchées d'ajouter des nouvelles lignes en ajoutant une virgule, une technique similaire est pas immédiatement disponible pour les fonctions d'entrée comme raw_input (Python 2.x) ou input (Python 3.x).
Pour supprimer la nouvelle ligne après la saisie de l'utilisateur, on peut tirer parti du fait que raw_input ou input imprime intrinsèquement un nouveau ligne avant de demander une entrée. Cependant, il n'est pas possible d'empêcher l'insertion de cette nouvelle ligne initiale.
Surmonter la contrainte d'insertion de nouvelle ligne
Bien qu'il soit impossible de supprimer directement la nouvelle ligne, une solution de contournement existe pour revenir de manière transparente à la ligne précédente après avoir reçu une entrée. Cette technique consiste à utiliser le code suivant :
<code class="python">print('3[{}C3[1A'.format(len(x) + y), end='')</code>
où :
Explication
La chaîne ' 33[4C' déplace le curseur de quatre index vers la droite, écrasant ainsi l'invite avec un caractère spatial. De même, la chaîne « 33[1A » déplace le curseur d'une ligne vers le haut, alignant la saisie de l'utilisateur directement après l'invite.
Cas d'utilisation
L'extrait de code suivant démontre l'application pratique de cette technique :
<code class="python">print('Hello, ', end='') name = input() print(', how do you do?')</code>
Résultat
Hello, Tomas, how do you do?
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!