Come si usa il metodo String splitlines () in Python?

| |

Oggi in questo tutorial parleremo del metodo Python string splitlines (). Per prima cosa, diamo un’occhiata alla definizione del metodo principale.

 define Splitlines ()

Che cos’è la stringa splitlines< /a>() metodo in Python?

Stringa Python splitlines () &è un built-in metodo che restituisce un elenco di stringhe in una stringa, con un’interruzione ai limiti della riga. Le interruzioni di riga non sono incluse nell’elenco risultante a meno che keepends non sia specificato come true.

< ! - ptnonline336 ->


Sintassi.

 str.splitlines ( [keepends]) 

dove,

  • str &l’oggetto stringa che dobbiamo dividere in un elenco di stringhe,
  • keepends, quando True è impostato, i limiti di riga sono inclusi nelle voci di elenco risultanti. In caso contrario, non sono incluse interruzioni di riga.

Di seguito è mostrata una tabella per i caratteri di interruzione di riga e le relative descrizioni.

Tabella di interruzione di riga

carattere Rappresentazione Python
n Avanzamento riga
p Ritorno a capo
rn < /td> Ritorno a capo + avanzamento riga
v o x0b Stringhe di tabulazione (Python 3.2 e successive)
fo x0c Invio modulo (Python 3.2 e versioni successive)
x1c Separatore file < /td>
x1d Separatore di gruppi
x1e Separatore di record
x85 Riga successiva (codice di controllo C1)
u2028 Separatore di riga
u2029 Separatore di paragrafo

Nessun residuo

< p> Come accennato in precedenza, senza menzionare il parametro keepends genererà un elenco di linee divise escluse le interruzioni di riga o i caratteri limite.

Dai un’occhiata all’esempio qui sotto.



 # Inizializzazione stringa string1 = " Tim Charlie John Alan "string2 =" Benvenuto in AskPython! " string3 = "Keyboardu2028Monitoru2029x1cMousex0cCPUx85Motherboardx1eSpeakers UPS" #senza keepends print (string1.splitlines< /a> ()) print (string2.splitlines ()) print (string3.splitlines ()) 

Output:

 [’Tim’,’ Charlie’, ’John’,’ Alan’] [’Welcome’,’ ’,’ to’, ’AskPython!’] [’Keyboard ’,’ Monitor’, ’’, ’Mouse ’,’ CPU’, ’Motherboard’,’ Speakers’, ’UPS’] 

dove,

  • Abbiamo annunciato tre righe contenenti parole diverse, separate da righe diverse pause,
  • Passiamo ciascuno all’inline splitlines () con i keepend predefiniti (false). E stampiamo gli elenchi risultanti di linee divise.

Come puoi vedere dall’output, poiché Keepends non è stato installato, tutte le linee di divisione non hanno limiti di riga o caratteri di confine. Per la riga 2, ’’ è incluso nella parola ’Askpython’ perché non è un carattere limite (non è nella tabella).

Quindi l’output è giustificato.

Con i feed di riga corrispondenti inclusi

Se specifichiamo keepends come True , le linee divise ora includeranno i feed di riga corrispondenti.

Modifichiamo il nostro codice precedente (senza keepends) impostando il parametro keepends su True all’interno del splitlines () metodo stringa. Osserva da vicino il risultato e prova a notare la differenza rispetto al precedente.

 # Inizializzazione della stringa string1 = "Tim Charlie John Alan" string2 = "Benvenuto in AskPython! " string3 = "Keyboardu2028Monitoru2029x1cMousex0cCPUx85Motherboardx1eSpeakers UPS" #with keepends print (string1.splitlines (keepends = True)) print (string2.splitlines (keepends = True)) print (string3.splitlines (keepends = Truep)) : 

 [’Tim’, ’Charlie’, ’John’, ’Alan’] [’ Welcome ’ ,’ ’,’ a ’ , ’AskPython!’] [’Keyboardu2028’,’ Monitoru2029’, ’x1c’,’ Mousex0c’, ’CPUx85’,’ Motherboardx1e’, ’Speakers’,’ UPS’] 

Come previsto, per le stesse righe, splitlines () include tutte le bo personaggi non dadi.