Python: Le funzioni che operano sulle stringhe. Utilizzare i metodi

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
Python lavorare con le stringhe

Metodi delle stringhe

Le stringhe sono un esempio di oggetti Python. Un oggetto contiene sia i dati (la stringa vera e propria) che i metodi, che essenzialmente sono funzioni incorporate nell’oggetto e sono disponibili per qualsiasi istanza dell’oggetto.

Tramite due funzioni hai la possibilità di conoscere la tipologia di un oggetto ed i metodi ad esso associati.

La funzione type mostra il tipo di oggetto e la funzione dir mostra i metodi disponibili.

stringa = 'Hello world'
type(stringa)
str
stringa = 'Hello world'
dir(stringa)
[ ‘capitalize’, ‘casefold’, ‘center’, ‘count’, ‘encode’, ‘endswith’, ‘expandtabs’, ‘find’, ‘format’, ‘format_map’, ‘index’, ‘isalnum’, ‘isalpha’, ‘isascii’, ‘isdecimal’, ‘isdigit’, ‘isidentifier’, ‘islower’, ‘isnumeric’, ‘isprintable’, ‘isspace’, ‘istitle’, ‘isupper’, ‘join’, ‘ljust’, ‘lower’, ‘lstrip’, ‘maketrans’, ‘partition’, ‘replace’, ‘rfind’, ‘rindex’, ‘rjust’, ‘rpartition’, ‘rsplit’, ‘rstrip’, ‘split’, ‘splitlines’, ‘startswith’, ‘strip’, ‘swapcase’, ‘title’, ‘translate’, ‘upper’, ‘zfill’]

help(str.capitalize)

Help on method_descriptor:

capitalize(self, /)
Return a capitalized version of the string.

Utilizzare i metodi

Tramite la funzione dir otterrai un elenco di metodi, di cui, tramite la funzione help puoi ottenere una semplice documentazione; esiste però
una migliore fonte di documentazione riguardo i metodi: https://docs.python.org/3.5/library/stdtypes.html#string-methods.

Chiamare un metodo è simile al chiamare una funzione, cioè riceve argomenti e restituisce un valore, con una sintassi diversa. Chiamiamo un metodo facendo precedere il nome a quello della variabile usando un punto come delimitatore.
Ad esempio, il metodo upper prende una stringa in input e restituisce una nuova stringa con tutte le lettere maiuscole:
Non va utilizzata la sintassi upper(word), ma piuttosto word.upper().

word = 'matematica'
new_word = word.upper()
print(new_word)
⇒ MATEMATICA
Questa forma di notazione con il punto specifica il nome del metodo (upper) e il nome della stringa (word) a cui applicare il metodo.
La chiamata di un metodo è chiamata invocazione: nel caso precedente diremo che stiamo invocando upper sulla stringa word.
Ad esempio, esiste un metodo per le stringhe chiamato “find” che cerca l’eventuale posizione di una stringa o segmento all’interno di un’altra:
word = 'matematica'
pos = word.find('a')
print(pos)
⇒ 1
In questo esempio, abbiamo invocato find su word e passato come parametro la lettera che stiamo cercando.
Il metodo find può cercare sia segmenti di stringhe sia caratteri:
word = 'matematica'
pos = word.find('ema')
print(pos)
⇒ 3
Questa funzione può ricevere, come secondo argomento, l’indice da cui dovrebbe iniziare la ricerca:
word = 'matematica'
pos = word.find('ma',2)
print(pos)
⇒ 4
Forse potrebbe interessarti anche:  Python: Le funzioni che operano sulle stringhe -1-