Comment ajouter CRLF à une chaîne en Python

Exemple de fonction de code informatique Python

Crédit d'image : matejmo/iStock/GettyImages

En Python, CRLF fait référence à un retour chariot et à un saut de ligne. Cette paire de caractères est utilisée pour terminer des lignes de texte dans de nombreux fichiers informatiques, sur le modèle des actions qu'un utilisateur de machine à écrire effectue à la fin d'une ligne de frappe. En Python, vous pouvez les ajouter manuellement à une chaîne à l'aide d'opérateurs de concaténation de chaînes, ou vous pouvez spécifier qu'ils doivent être ajoutés à une chaîne que vous imprimez à l'écran ou dans un fichier.

Python et CRLF

Différents systèmes d'exploitation ont différentes manières d'indiquer quand un fichier texte comprend un saut de ligne. Cela se fait généralement avec un mélange de caractères de retour chariot et de saut de ligne, qui sont définis par des codes numériques particuliers.

Vidéo du jour

Traditionnellement, les systèmes d'exploitation Microsoft utilisent un retour chariot suivi d'un saut de ligne, et les systèmes Unix, y compris Linux et les versions récentes d'Apple macOS, n'utilisent qu'un seul saut de ligne. Les anciens systèmes Mac n'utilisaient qu'un seul retour chariot.

De nombreux programmes de traitement de texte peuvent détecter les fins de ligne utilisées et ouvrir n'importe quel fichier pour qu'il s'affiche. normalement, mais le texte peut parfois être mutilé si un programme n'est pas configuré pour faire cette supposition ou le fait incorrectement. Python est un langage de programmation qui s'exécute sur une grande variété de systèmes, il doit donc être capable de gérer une variété de types de fins de ligne.

Ajout de fins de ligne aux chaînes

Ajoutez manuellement une fin de ligne de votre choix à une chaîne en Python à l'aide de l'opérateur de concaténation du signe plus, qui relie plusieurs chaînes.

Par exemple, "abc" + "def" renvoie la chaîne "abcdef" comme résultat. En Python, un retour chariot est représenté par la chaîne \r et un caractère de nouvelle ligne est représenté par la chaîne \n. La barre oblique inverse est un caractère d'échappement qui indique à Python que le caractère suivant a une signification particulière. Pour taper une barre oblique inverse réelle, placez une deuxième barre oblique inverse avant que Python l'échappe également.

Pour ajouter un retour chariot et une nouvelle ligne à une chaîne, ajoutez-y la chaîne "\r\n" à l'aide du signe plus.

Impression avec CRLF

Par défaut, l'opérateur d'impression dans Python 2 et la fonction d'impression dans Python 3 ajoutent uniquement un caractère de nouvelle ligne, pas un retour chariot, à la fin de chaque ligne de texte imprimée dans une chaîne ou un fichier. Python 2 et Python 3 sont tous deux largement utilisés, mais ils gèrent l'impression légèrement différemment.

Sur Python 2, vous ajoutez vous-même la fin correcte à chaque ligne et ajoutez une virgule à la fin de l'instruction print après l'entrée pour supprimer la propre fin de ligne de Python. Par exemple, vous pouvez saisir 'print "Ceci est un test" + "\r\n"' pour imprimer la chaîne "Ceci est un test" avec un retour chariot et une nouvelle ligne.

En Python 3, "print" est une fonction plutôt qu'un opérateur spécial. Il prend un argument appelé "end" qui spécifie la fin de ligne à utiliser. 'Print ("Ceci est un test", end = "\r\n")' imprime la phrase avec un retour chariot et un caractère de nouvelle ligne. Par défaut, l'argument de fin est simplement un caractère de nouvelle ligne.