Python è uno dei linguaggi di programmazione più versatili, con una sintassi semplice e chiara. Grazie alla sua semplicità e potenza, è adatto sia ai principianti che agli sviluppatori esperti, ed è utilizzato in una vasta gamma di settori, tra cui sviluppo web, analisi dei dati, automazione e intelligenza artificiale.
Python è progettato per essere facilmente leggibile e per ridurre il numero di righe di codice necessarie per eseguire operazioni comuni.
Stringhe e Liste in Python
In Python, le stringhe sono sequenze ordinate di caratteri in cui un carattere segue l’altro.
Per creare una stringa è sufficiente assegnare ad una variabile un testo racchiuso tra virgolette: possono essere utilizzati indifferentemente gli ‘apici’ o “doppi apici”.
Python
# una stringa compresa tra apici
saluto = 'Ciao'
# una stringa compresa tra doppi apici
nome = "Netsons"
Le stringhe sono immutabili ad indicare che una volta create, i singoli caratteri non possono essere modificati.
Tuttavia, è possibile aggiornare la variabile con una stringa diversa.
Python
saluto = 'ciao netsons'
saluto = 'Ciao Netsons'
print(saluto)
#output
Ciao Netsons
È possibile anche creare una stringa multiriga, cioè che si estende su più righe.
In questo caso è necessario racchiuderla tra apici tripli:
Python
# una stringa multiriga compresa tra apici tripli
saluto_multiriga = '''Ciao Netsons
ho appena attivato un server!
'''
Una lista, invece, è una sequenza ordinata di dati. Quindi più elementi, solitamente correlati tra loro, sono memorizzati insieme nella stessa variabile.
Per creare una lista è sufficiente dichiarare una variabile a cui assegnare zero o più elementi tra parentesi quadre, ognuno separato da una virgola.
Python
# una lista dei servizi Netsons
lista_servizi = ["Hosting", "Server", "Cloud Computing"]
print(lista_servizi)
#output
['Hosting', 'Server', 'Cloud Computing']
A differenza delle stringhe, le liste sono mutabili quindi è possibile modificare gli elementi di una lista dopo che è stata creata.
Prendendo ad esempio la lista precedente modifichiamo uno degli elementi:
Python
# una lista dei servizi Netsons
lista_servizi = ["Hosting", "Server", "Cloud Computing"]
# cambiamo il primo elemento della lista
lista_servizi[0] = "Cloud Hosting"
print(lista_servizi)
#output
['Cloud Hosting', 'Server', 'Cloud Computing']
A volte, potrebbe essere necessario convertire una stringa in una lista di caratteri o una lista di parole tramite il metodo noto come typecasting (conversione di tipo) che permette di convertire direttamente un tipo di dato in un altro.
In questo caso dal tipo di dato denominato ‘stringa’ al tipo di dato chiamato ‘lista’.
In questa guida vediamo diversi metodi per ottenere questo risultato.
Convertire una stringa in una lista di caratteri
Se si desidera suddividere una stringa in una lista in cui ogni elemento è un singolo carattere della stringa, è possibile utilizzare la funzione incorporata list(), passando la stringa come argomento della funzione.
Di seguito un esempio:
Python
# Stringa
nome = "Netsons"
# Convertire la stringa nome nella lista di caratteri
lista_nome = list(nome)
# Stampare l'output
print(lista_nome)
# Output
['N', 'e', 't', 's', 'o', 'n', 's']
In questo esempio, la funzione list(nome) converte ogni carattere della stringa ‘nome’ in un elemento separato nella lista chiamata ‘lista_nome’.
Convertire una stringa in una lista di parole
Se la stringa contiene delle parole separate da spazi (o altri delimitatori), si può utilizzare il metodo .split() per dividere la stringa in una lista di parole.
Di seguito un esempio:
Python
# Stringa
saluto = "Ciao da Netsons"
# Convertire la stringa saluto in una lista di parole
lista_parole = saluto.split()
# Stampare l'output
print(lista_parole)
# Output
['Ciao', 'da', 'Netsons']
In questo esempio il metodo .split() divide la stringa in corrispondenza degli spazi e crea una lista di parole.
Utilizzare un delimitatore personalizzato con split()
Se la stringa in questione è separata da un delimitatore diverso dallo spazio, è possibile passarlo come parametro al metodo split()
Ad esempio, se la stringa è separata da virgole, si può usare una virgola come delimitatore.
Di seguito l’esempio:
Python
# Stringa
saluto = "Ciao, da Netsons"
# Convertire la stringa saluto in una lista di parole separate da virgola
lista_parole = saluto.split(',')
# Stampare l'output
print(lista_parole)
# Output
['Ciao', 'da Netsons']
In questo caso, la funzione split(‘,’) divide la stringa ogni volta che trova una virgola.
Utilizzare il parametro maxsplit con split()
Un secondo parametro utilizzabile nella funzione split() è maxsplit che definisce quante volte dividere la stringa per creare elementi della lista.
Se non dichiarato il parametro maxsplit è impostato di default a -1. Ciò significa che tutti gli elementi che compongono la stringa saranno divisi.
Altrimenti, possiamo dichiarare il valore per dividere la stringa solo il numero di volte desiderato.
Di seguito un esempio in cui andiamo a dividere una stringa solo tre volte:
Python
# Stringa
saluto = "Ciao a tutti da Netsons"
# Convertire la stringa saluto in una lista di tre parole
lista_saluto = lista_saluto.split(maxsplit=3)
# Stampare l'output
print(lista_saluto)
# Output
['Ciao', 'a', 'tutti']