Come aggiungere CRLF a una stringa in Python

Funzione di esempio di codice per computer Python

Credito immagine: matejmo/iStock/GettyImages

In Python, CRLF fa riferimento a un ritorno a capo e un avanzamento riga. Questa coppia di caratteri viene utilizzata per terminare le righe di testo in molti file di computer, modellati sulle azioni che un utente della macchina da scrivere esegue alla fine di una riga di digitazione. In Python, puoi aggiungerli manualmente a una stringa utilizzando gli operatori di concatenazione di stringhe oppure puoi specificare che devono essere aggiunti a una stringa che stampi sullo schermo o in un file.

Python e CRLF

Sistemi operativi diversi hanno modi diversi per indicare quando un file di testo include un'interruzione di riga. Di solito è fatto con una combinazione di caratteri di ritorno a capo e di avanzamento riga, che sono definiti da particolari codici numerici.

Video del giorno

Tradizionalmente, i sistemi operativi Microsoft utilizzano un ritorno a capo seguito da un feed di riga e i sistemi Unix, inclusi Linux e le versioni recenti di Apple macOS, utilizzano solo un feed di riga. I sistemi Mac precedenti utilizzavano solo un singolo ritorno a capo.

Molti programmi di elaborazione del testo possono rilevare quali terminazioni di riga vengono utilizzate e aprire qualsiasi file in modo che venga visualizzato normalmente, ma il testo può occasionalmente essere alterato se un programma non è impostato per fare questa ipotesi o lo fa in modo errato. Python è un linguaggio di programmazione che funziona su un'ampia varietà di sistemi, quindi deve essere in grado di gestire una varietà di tipi di terminazioni di riga.

Aggiunta di terminazioni di riga alle stringhe

Aggiungi manualmente una fine di riga a tua scelta a una stringa in Python usando l'operatore di concatenazione del segno più, che unisce più stringhe.

Ad esempio, "abc" + "def" restituisce la stringa "abcdef" come risultato. In Python, un ritorno a capo è rappresentato dalla stringa \r e un carattere di nuova riga è rappresentato dalla stringa \n. La barra rovesciata è un carattere di escape che dice a Python che il seguente carattere ha un significato speciale. Per digitare una barra rovesciata effettiva, metti una seconda barra rovesciata prima di essa per consentire anche a Python di eseguirne l'escape.

Per aggiungere un ritorno a capo e una nuova riga a una stringa, aggiungi la stringa "\r\n" utilizzando il segno più.

Stampa con CRLF

Per impostazione predefinita, l'operatore print in Python 2 e la funzione print in Python 3 aggiungono solo un carattere di nuova riga, non un ritorno a capo, alla fine di ogni riga di testo stampata su una stringa o su un file. Sia Python 2 che Python 3 sono ampiamente utilizzati, ma gestiscono la stampa in modo leggermente diverso.

Su Python 2, aggiungi tu stesso la fine corretta a ciascuna riga e aggiungi una virgola alla fine dell'istruzione print dopo l'input per sopprimere la fine della riga di Python. Ad esempio, puoi inserire 'print "Questo è un test" + "\r\n"' per stampare la stringa "Questo è un test" con un ritorno a capo e una nuova riga.

In Python 3, "print" è una funzione piuttosto che un operatore speciale. Prende un argomento chiamato "end" che specifica la fine della riga da usare. 'Print ("Questo è un test", end = "\r\n")' stampa la frase con un ritorno a capo e un carattere di nuova riga. Per impostazione predefinita, l'argomento di fine è semplicemente un carattere di nuova riga.