Come Rimuovere i Caratteri da una Stringa in Python

Introduzione

Questo articolo descrive due metodi comuni che puoi utilizzare per rimuovere caratteri da una stringa utilizzando Python:

  • il metodo replace() della stringa
  • il metodo translate() della stringa

Per conoscere alcuni modi diversi per rimuovere spazi da una stringa in Python, consulta Rimuovere gli spazi da una stringa in Python.

A Python String object is immutable, so you can’t change its value. Any method that manipulates a string value returns a new String object.

Gli esempi in questo tutorial utilizzano la console interattiva di Python nella riga di comando per dimostrare diversi metodi di rimozione dei caratteri.

Carica le tue applicazioni Python da GitHub utilizzando DigitalOcean App Platform. Lascia che DigitalOcean si occupi dello scaling della tua app.

Rimuovere i caratteri da una stringa utilizzando il metodo replace()

Il metodo replace() sostituisce un carattere con un nuovo carattere. Puoi rimuovere un carattere da una stringa fornendo il/i carattere/i da sostituire come primo argomento e una stringa vuota come secondo argomento.

Dichiara la variabile stringa:

  1. s = 'abc12321cba'

Sostituisci il carattere con una stringa vuota:

  1. print(s.replace('a', ''))

L’output è:

Output
bc12321cb

L’output mostra che entrambe le occorrenze del carattere a sono state rimosse dalla stringa.

Rimuovere i caratteri di nuova riga da una stringa usando il metodo replace()

Dichiara una variabile stringa con alcuni caratteri di nuova riga:

  1. s = 'ab\ncd\nef'

Sostituisci il carattere di nuova riga con una stringa vuota:

  1. print(s.replace('\n', ''))

L’output è:

Output
abcdef

L’output mostra che entrambi i caratteri di nuova riga (\n) sono stati rimossi dalla stringa.

Rimuovere una sottostringa da una stringa usando il metodo replace()

Il metodo replace() prende stringhe come argomenti, quindi puoi anche sostituire una parola nella stringa.

Dichiara la variabile stringa:

  1. s = 'Helloabc'

Sostituisci una parola con una stringa vuota:

  1. print(s.replace('Hello', ''))

Il risultato è:

Output
abc

Il risultato mostra che la stringa Hello è stata rimossa dalla stringa di input.

Rimuovi Caratteri un Numero Specifico di Volte Usando il Metodo replace()

Puoi passare un terzo argomento nel metodo replace() per specificare il numero di sostituzioni da effettuare nella stringa prima di fermarsi. Ad esempio, se specifici 2 come terzo argomento, allora solo le prime 2 occorrenze dei caratteri dati vengono sostituite.

Dichiara la variabile stringa:

  1. s = 'abababab'

Sostituisci le prime due occorrenze del carattere con il nuovo carattere:

  1. print(s.replace('a', 'A', 2)) # effettua la sostituzione due volte

Il risultato è:

Output
AbAbabab

Il risultato mostra che le prime due occorrenze del carattere a sono state sostituite dal carattere A. Poiché la sostituzione è stata fatta solo due volte, le altre occorrenze di a rimangono nella stringa.

Rimuovere Caratteri da una Stringa Utilizzando il Metodo translate()

Il metodo translate() di Python sostituisce ciascun carattere nella stringa utilizzando la tabella di mapping o il dizionario fornito.

Dichiara una variabile di stringa:

  1. s = 'abc12321cba'

Otieni il valore del punto di codice Unicode di un carattere e sostituiscilo con None:

  1. print(s.translate({ord('b'): None}))

L’output è:

Output
ac12321ca

L’output mostra che entrambe le occorrenze del carattere b sono state rimosse dalla stringa come definito nel dizionario personalizzato.

Rimuovere Più Caratteri da una Stringa Utilizzando il Metodo translate()

È possibile sostituire più caratteri in una stringa utilizzando il metodo translate(). L’esempio seguente utilizza un dizionario personalizzato, {ord(i): None for i in 'abc'}, che sostituisce tutte le occorrenze di a, b, e c nella stringa data con None.

Dichiara la variabile di stringa:

  1. s = 'abc12321cba'

Sostituisci tutti i caratteri abc con None:

  1. print(s.translate({ord(i): None for i in 'abc'}))

L’output è:

Output
12321

L’output mostra che tutte le occorrenze di a, b, e c sono state rimosse dalla stringa come definito nel dizionario personalizzato.

Rimuovere i Caratteri di Nuova Riga da una Stringa Utilizzando il Metodo translate()

Puoi sostituire i caratteri di nuova riga in una stringa utilizzando il metodo translate(). L’esempio seguente utilizza un dizionario personalizzato, {ord('\n'): None}, che sostituisce tutte le occorrenze di \n nella stringa data con None.

Dichiara la variabile di stringa:

  1. s = 'ab\ncd\nef'

Sostituisci tutti i caratteri \n con None:

  1. print(s.translate({ord('\n'): None}))

L’output è:

Output
abcdef

L’output mostra che tutte le occorrenze del carattere di nuova riga \n sono state rimosse dalla stringa come definito nel dizionario personalizzato.

Conclusioni

In questo tutorial, hai appreso alcuni dei metodi che puoi utilizzare per rimuovere i caratteri dalle stringhe in Python. Continua il tuo apprendimento sulle stringhe Python.

Source:
https://www.digitalocean.com/community/tutorials/python-remove-character-from-string