Slice Stringa Python

La stringa Python supporta l’uso dello slicing per creare una sottostringa. Si noti che la stringa in Python è immutabile, quindi lo slicing crea una nuova sottostringa dalla stringa originale e la stringa originale rimane invariata.

La stringa slice Python

La sintassi per lo slicing di una stringa in Python è la seguente:

str_object[start_pos:end_pos:step]

Lo slicing inizia dall’indice start_pos (incluso) e termina all’indice end_pos (escluso). Il parametro step viene utilizzato per specificare i passi da effettuare dall’indice di inizio all’indice di fine. Lo slicing della stringa in Python segue sempre questa regola: s[:i] + s[i:] == s per qualsiasi indice ‘i’. Tutti questi parametri sono opzionali: il valore predefinito di start_pos è 0, il valore predefinito di end_pos è la lunghezza della stringa e il valore predefinito di step è 1. Vediamo alcuni semplici esempi di utilizzo della funzione di slicing per creare una sottostringa.

s = 'HelloWorld'

print(s[:])

print(s[::])

Output:

HelloWorld
HelloWorld

Si noti che poiché nessuno dei parametri di slicing è stato fornito, la sottostringa è uguale alla stringa originale. Vediamo alcuni altri esempi di slicing di una stringa.

s = 'HelloWorld'
first_five_chars = s[:5]
print(first_five_chars)

third_to_fifth_chars = s[2:5]
print(third_to_fifth_chars)

Output:

Hello
llo

Si noti che il valore dell’indice parte da 0, quindi start_pos 2 si riferisce al terzo carattere nella stringa.

Invertire una stringa usando lo slicing

Possiamo invertire una stringa utilizzando lo slicing impostando il valore del parametro step a -1.

s = 'HelloWorld'
reverse_str = s[::-1]
print(reverse_str)

Output: dlroWolleH Vediamo alcuni altri esempi di utilizzo di passaggi e valori di indice negativi.

s1 = s[2:8:2]
print(s1)

Output: loo Qui la sottostringa contiene caratteri dagli indici 2, 4 e 6.

s1 = s[8:1:-1]
print(s1)

Output: lroWoll Qui i valori dell’indice vengono presi dalla fine all’inizio. La sottostringa è composta dagli indici 1 a 7 dalla fine all’inizio.

s1 = s[8:1:-2]
print(s1)

Output: lool La suddivisione di Python funziona anche con indici negativi, in tal caso, la posizione di inizio viene esclusa e la posizione di fine è inclusa nella sottostringa.

s1 = s[-4:-2]
print(s1)

Output: or Il taglio di stringa di Python gestisce elegantemente gli indici fuori range.

>>>s = 'Python'
>>>s[100:]
''
>>>s[2:50]
'thon'

Ecco tutto per la funzione di taglio di stringa di Python per creare una sottostringa.

Puoi controllare lo script Python completo e altri esempi di Python dal nostro Repository di GitHub.

Source:
https://www.digitalocean.com/community/tutorials/python-slice-string