Come dividere una stringa in Python (delimitatori e Maxsplit)
Scopri come dividere una stringa in un elenco in Python utilizzando il metodo split(). Esplora la suddivisione per spazi, virgole, ritorni a capo e la limitazione del numero di suddivisioni.
Panoramica
La divisione delle stringhe è una delle operazioni di elaborazione del testo più comuni. Sia che tu stia analizzando un file CSV, suddividendo i log, elaborando l'input dell'utente o estraendo parole da un documento, i metodi di stringa incorporati di Python rendono questa attività banale. Il metodo chiave per questo è `.split()`, che suddivide una stringa in un elenco di sottostringhe.
Per impostazione predefinita, chiamare `split()` senza argomenti divide la stringa con qualsiasi spazio bianco (spazi, tabulazioni, ritorni a capo) ed elimina gli spazi bianchi consecutivi. Se devi partizionare una stringa in base a un carattere specifico, come una virgola nei dati CSV, passa quel carattere come separatore (ad esempio, `text.split(",")`).
Il metodo `split()` accetta anche un secondo parametro opzionale chiamato "maxsplit". Ciò determina il numero massimo di divisioni che devono essere eseguite. Il resto della stringa viene restituito come elemento finale dell'elenco, il che è molto utile quando si desidera analizzare solo i primi token di un comando o messaggio.
Codice e output di esecuzione
Questo script illustra la suddivisione delle stringhe utilizzando delimitatori predefiniti, delimitatori personalizzati e la limitazione delle suddivisioni utilizzando maxsplit.
sentence = "Python is fun to learn"
csv_data = "apple,banana,orange,grape"
# 1. Split by whitespace (default)
words = sentence.split()
print("Whitespace split:", words)
# 2. Split by comma separator
fruits = csv_data.split(",")
print("Comma split:", fruits)
# 3. Using maxsplit parameter
limited_split = csv_data.split(",", maxsplit=2)
print("Maxsplit of 2:", limited_split)Whitespace split: ['Python', 'is', 'fun', 'to', 'learn']
Comma split: ['apple', 'banana', 'orange', 'grape']
Maxsplit of 2: ['apple', 'banana', 'orange,grape']Implementazione passo dopo passo
- Chiama il metodo .split() sulla variabile stringa.
- Passa una stringa separatore come ',' o '\n' per dividerla con un delimitatore personalizzato.
- Utilizza l'argomento maxsplit per interrompere la suddivisione dopo un numero specifico di elementi.
Domande frequenti
In che modo split() gestisce gli spazi consecutivi?
Per impostazione predefinita (senza argomenti), gli spazi consecutivi vengono trattati come un unico separatore. Tuttavia, se si passa " ", gli spazi consecutivi produrranno stringhe vuote nell'elenco di output.
Come posso dividere una stringa in base a più delimitatori diversi?
Per dividere in base a più delimitatori (come virgole, spazi e punto e virgola), utilizzare le espressioni regolari tramite la funzione re.split().
Argomenti correlati
Scopri come invertire una stringa in Python utilizzando l'affettatura, la funzione reversed() e la concatenazione di loop con esempi di codice visivo.
Come convertire una lista in una stringa in PythonScopri come convertire elenchi di stringhe o numeri in una singola stringa in Python. Padroneggia il metodo join(), le conversioni delle mappe e la formattazione personalizzata.
Risorse Python consigliate
Espandi le tue conoscenze con tutorial interattivi, foglietti illustrativi e confronti di codici correlati.
Spiegazione delle variabili Python e dei tipi di dati
Comprendere le variabili Python e i tipi di dati principali (stringhe, numeri interi, float, booleani). Una guida completa per principianti all'assegnazione della memoria in Python.
Foglio informativo sui metodi delle stringhe Python
Una guida di riferimento completa per la manipolazione delle stringhe Python. Padroneggia la formattazione, la ricerca, la divisione, la sostituzione e il controllo delle proprietà delle stringhe.
Python vs JavaScript: quale linguaggio di programmazione è il migliore?
Un confronto completo tra Python e JavaScript. Esplora le differenze di sintassi, le prestazioni, i casi d'uso (backend e frontend) ed esempi di codifica.