Qu'est-ce?
Que signifie "\r"? Que faut-il faire? Je n'ai jamais vu avant et sa me donne des maux de tête. Il ne semble pas avoir n'importe quel but, depuis 'un\ra' impression que aa', mais ce n'est pas la même que la chaîne 'aa'. Im en utilisant python 2.6
Pour info pour les autres Googlers - Sur Windows, j'obtiens un
La meilleure réponse que j'ai trouvé est ici stackoverflow.com/questions/15433188/...
'\r'
lors de la lecture de la sortie standard d'un processus appelé avec le subprocessing
module, mais lors de la lecture de l'entrée standard stdin dans le processus de la '\r'
n'est pas là.La meilleure réponse que j'ai trouvé est ici stackoverflow.com/questions/15433188/...
OriginalL'auteur calccrypto | 2010-07-25
Vous devez vous connecter pour publier un commentaire.
C'est un vieux caractère de contrôle des machines à écrire.
Il signifie "retour chariot". En ce moment, quand vous avez appuyé sur "enter", vous allez à la ligne suivante, puis le transport est allé de nouveau au début de la ligne (d'où le retour de chariot).
Puis, avec les ordinateurs, les différents Systèmes d'exploitation fait des choix différents pour représenter les nouvelles lignes.
Sur windows, vous avez "\r\n" (retour chariot + nouvelle ligne).
Sur unix, vous avez "\n" uniquement (pas besoin de faire un retour chariot, c'était une sorte de tacite par la nouvelle ligne).
Sur les anciens mac OS, vous avez eu "\r".
De nos jours, il n'est pas utilisé, sauf pour les retours à la ligne (ou je ne sais pas les autres usages).
printf("1%%"); fflush(stdout); sleep(1); printf("\r2%%");
. Le premier printf laisse le curseur à la fin de la ligne. La deuxième printf utilise\r
pour déplacer le curseur vers le début de la ligne, puis remplacer le1%
avec2%
.Ah oui, j'ai oublié à ce sujet 🙂
OriginalL'auteur Scharron
Pour moi (sur un Mac OS X 10.5 Terminal.App, Python 2.6.5):
ou pour donner un meilleur exemple:
OIE, le
\r
"renvoie le curseur au début de la ligne" (sans le début d'un nouveau long), de sorte que'short'
"écrase" le début de'longstring'
.Cet effet est bien de montrer à l'utilisateur une seule ligne de "situation actuelle" en cours de mise à jour pendant une longue opération -- utilisation
print '\rupdate',
avec une virgule pour éviter émettant un caractère de nouvelle ligne, de mettre à jour le statut en remplacement de la précédente. Bien sûr, vous devez vous assurer que chaque mise à jour de la chaîne ainsi montré au moins aussi longue que la précédente (facile simplement de remplissage avec des espaces).Noter que d'autres intervenants ont remarqué des effets visuels différents sur leurs plates-formes (vous l'avez vu
\r
disparaître sans effet, ce qui est sans précédent dans mon expérience), donc cette belle façon de fournir des mises à jour ne fonctionne pas bien sur toutes les plates -! -)OriginalL'auteur Alex Martelli
C'est la échapper pour un Retour Chariot. Sur ma console, en cours d'exécution sur Windows,
print 'a\ra'
résultats ...... obtenir de l'imprimé vers stdout.
Voici une liste de valide tous les évasions.
\newline
Ignoré\\
- Barre oblique inverse ()\'
- L'apostrophe (')\"
- Double quote (")\a
- ASCII Bell (BEL)\b
- ASCII de la touche retour arrière (BS)\f
- ASCII Formfeed (FF)\n
- ASCII Saut de ligne (LF)\N{name}
- Personnage du nom de nom de, dans la de la base de données Unicode (Unicode uniquement)\r
- ASCII Retour de Chariot (CR)\t
- ASCII Horizontale Tabulation (TAB)\uxxxx
Caractères 16 bits hex valeur xxxx (Unicode uniquement)\Uxxxxxxxx
- Caractère avec 32-bit hex valeur xxxxxxxx (Unicode uniquement)\v
- ASCII Tabulation Verticale (VT)\ooo
Caractères dont la valeur octale ooo\xhh
Caractères dont la valeur hexadécimale hhprint 'a\ra'
sur Windows me donne juste un seula
. Le retour chariot sans un retour à la ligne est le deuxième d'une remplacer la première.Il dépend de la façon dont votre console interprète la séquence de contrôle, je suppose. Un bon argument pour toujours à l'aide
repr
lorsque vous déboguez, et en évitant les caractères de contrôle chaque fois que possible si vous n'êtes pas.OriginalL'auteur Chris B.
devrait être un Retour à la ligne...quelque chose comme une nouvelle ligne...
regarder http://www.wilsonmar.com/1eschars.htm
OriginalL'auteur Jaro