Invertire una stringa in Python

Azaz Farooq 30 marzo 2021
  1. Invertire una stringa in Python utilizzando il metodo Slicing
  2. Invertire una stringa in Python usando il bucle
  3. Invertire una stringa in Python usando la funzione reversed()
  4. Invertire una stringa in Python utilizzando il metodo ricorsivo
Invertire una stringa in Python

Questo articolo introdurrà alcuni metodi per invertire una stringa in Python.

Invertire una stringa in Python utilizzando il metodo Slicing

Questo metodo utilizza l’operatore di taglio : per invertire la stringa. L’indice iniziale dell’affettatura è l’indice dell’ultimo elemento e l’indice finale è l’indice del primo elemento (potrebbe anche essere ignorato in questo caso). Il passo è -1, a indicare che l’affettatura torna indietro al passo di 1.

Di seguito viene fornito il codice di esempio completo:

str = "LearnPython"

length_str = len(str)

sliced_str = str[length_str::-1]
print("The sliced string is:", sliced_str)

Produzione:

The sliced string is: nohtyPnraeL

Invertire una stringa in Python usando il bucle

In questo metodo, innanzitutto, creiamo una stringa vuota per memorizzare la stringa invertita. La lunghezza della stringa data viene salvata nella variabile i come indice. Il cicli while continua fino a quando l’indice è maggiore di 0.

Di seguito viene fornito il codice di esempio completo.

str = "LearnPython"
string_reversed = []
i = len(str)
while i > 0:
    string_reversed += str[i - 1]
    i = i - 1  # decrement index
print("The Reversed String is", string_reversed)

L’istruzione string_reversed += str[i-1] salva il valore di str[i-1] nella stringa invertita. i=i-1 decrementa l’indice fino a raggiungere l’inizio della stringa.

Produzione:

The Reversed String is ['n', 'o', 'h', 't', 'y', 'P', 'n', 'r', 'a', 'e', 'L']

Invertire una stringa in Python usando la funzione reversed()

La funzione reversed() fornisce l’iteratore inverso della stringa data. I suoi elementi sono uniti dalla stringa vuota usando il metodo join().

Di seguito viene fornito il codice di esempio completo.

str = "LearnPython"

reversed_string = "".join(reversed(str))

print("The Reversed String is", reversed_string)

Il metodo join() unisce tutti i caratteri risultanti dall’iterazione inversa in una nuova stringa.

Produzione:

The Reversed String is nohtyPnraeL

Invertire una stringa in Python utilizzando il metodo ricorsivo

Possiamo usare una funzione ricorsiva per invertire la stringa. La condizione di base è che la stringa venga restituita se la lunghezza della stringa è uguale a 0. Se non uguale a 0, la funzione inversa viene chiamata ricorsivamente, ad eccezione del primo carattere, per tagliare la sezione di stringa e concatenare il primo carattere alla fine dello spago affettato.

Di seguito viene fornito il codice di esempio completo.

def reverse_string(string):
    if len(string) == 0:
        return string
    else:
        return reverse_string(string[1:]) + string[0]


string = "LearnPython"

print("The original string  is : ", end="")
print(string)

print("The reversed string is : ", end="")
print(reverse_string(string))

Produzione:

The original string  is : LearnPython
The reversed string(using loops) is : nohtyPnraeL

Articolo correlato - Python String