Dividere una stringa in Python è piuttosto semplice. Puoi ottenere ciò utilizzando la funzione "split ()" incorporata di Python.

Il Diviso() in Python separa ogni parola in una stringa usando una virgola, trasformandola in un elenco di parole. Questa guida ti guiderà attraverso i vari modi in cui puoi dividere una stringa in Python.

Come utilizzare il metodo Split Python

Come accennato in precedenza, per impostazione predefinita, il file built-in di Python Diviso() funzione spezza una stringa in singole parole separate da virgole. Ma accetta due argomenti opzionali, ed ecco come appare la sintassi:

string.split ([separatng criteri], [break point o max_split])

Quando specifichi un file criteri di separazione, la funzione individua quel criterio all'interno della stringa e avvia una divisione in quel punto. Altrimenti, per impostazione predefinita, divide la stringa ovunque ci sia uno spazio bianco.

Dai un'occhiata all'esempio qui sotto per vedere come funziona. Qui, gli spazi bianchi sono i criteri di separazione predefiniti, poiché non ne abbiamo specificato uno:

instagram viewer
myTexts = 'Come dividere un testo in Python'
splitString = myTexts.split ()
print (splitString)
Risultato: ["Come", "a", "dividere", "a", "testo", "in", "Python"]

Vediamo come il file Diviso() funziona quando si specificano i criteri di separazione. In questo esempio, una virgola è il criterio di separazione:

myTexts = 'Come dividere un testo in Python'
print (myTexts.split (","))

Per una migliore comprensione, il codice di esempio seguente divide le stringhe ovunque sia presente un punto. Quindi i punti qui sono i criteri di separazione:

myTexts = 'Come dividere un testo in. Pitone'
print (myTexts.split ("."))
Risultato: ["Come dividere", "un testo in", "Python"]

max_split è un numero intero che specifica il numero massimo di interruzioni in una stringa. Ancora più importante, indica il punto in cui la stringa si interrompe.

Quindi puoi includere quel valore tra parentesi per spezzare la stringa in punti specifici.

Ad esempio, il codice seguente divide i testi in due e si ferma alla seconda virgola:

myTexts = 'How, to, split, a, text, in, Python'
print (myTexts.split (",", 2))
Risultato: ['How', 'to', 'split, a, text, in, Python']

Per vedere come funziona ulteriormente, separa la stringa nel codice sottostante, facendola fermare sul secondo punto:

myTexts = 'How.to split.a text.in. Pitone'
print (myTexts.split (".", 2))
Risultato: ['How', 'to split', 'a text.in. Pitone']

Mentre il Diviso() metodo non scompone le stringhe in alfabeti, puoi ottenere ciò utilizzando il per ciclo continuo:

myTexts = 'Come dividere un testo in Python'
Alfabeti = []
per ciascuno in myTexts:
alfa = ciascuno
Alfabeti.append (alfa)
stampa (alfabeti)

Relazionato: Come aggiungere un elenco in Python

Invece di aggiungere a un elenco come abbiamo fatto nel codice sopra, puoi abbreviare il codice di utilizzando una lista di comprensione:

y = [ciascuno per ciascuno in myTexts]
stampa (y)

Crea un contatore di parole con la funzione Python Split

Puoi usare Python Diviso() in molti modi. Ad esempio, puoi contare il numero di parole dopo aver diviso ogni stringa:

myTexts = 'Come dividere un testo in Python'
print (len (myTexts.split ()))
Uscita: 7

Modifica il codice sopra per contare le parole in un file separato. Puoi creare una funzione per farlo. Ma qui, devi aprire e leggere il file contenente il testo.

Quindi dividi prima il testo ed esegui un conteggio restituendo la lunghezza della divisione risultante utilizzando il built-in len () funzione:

def countWords (file):
myFile = open (file, 'r')
File = myFile.read ()
splitString = File.split ()
return len (splitString)
print (countWords ('[Path to Yourfile.txt]'))

Sebbene sia un po 'complicato, puoi farlo anche usando il per solo loop:

def countWords (file):
myFile = open (file, 'r')
File = myFile.read ()
File = [File]
per i file in File:
return files.count ('') + 1
print (countWords ('[Path to Yourfile.txt]'))

Relazionato: Come aprire, leggere e scrivere su un file in Python

Per rendere il file per loop leggi ogni parola separatamente, dovresti inserire il tuo file in un elenco separato come abbiamo fatto nel codice sopra. Inoltre, applica il conteggio delle parole lasciando uno spazio tra le virgolette vuote tra parentesi. Altrimenti, ti dà l'output sbagliato.

Quindi il codice funziona contando gli spazi tra ogni parola e quindi aggiungendo 1 all'intero conteggio per ottenere il numero effettivo di parole.

Semplifica il tuo codice

Il Diviso() function è un prezioso strumento Python e, come hai visto, puoi usarlo per contare le parole in un file. Puoi persino risolvere altri problemi con esso come desideri. Ci sono molte altre funzioni integrate in Python come questa che semplificano operazioni complesse in modo rapido ed efficiente.

Quindi, invece di scrivere lunghi blocchi di codice, è sempre utile provare metodi integrati più efficienti, più semplici e veloci per risolvere vari problemi di codifica. Detto questo, ci sono molti altri modi per manipolare le stringhe oltre alla suddivisione. Puoi sempre provarli per migliorare la gestione delle stringhe in Python.

E-mail
Imparare Python? Ecco come manipolare le stringhe

Usare e manipolare le stringhe in Python può sembrare difficile, ma è apparentemente semplice.

Leggi Avanti

Argomenti correlati
  • Programmazione
  • Pitone
  • Tutorial di codifica
Circa l'autore
Idowu Omisola (72 articoli pubblicati)

Idowu è appassionato di tutto ciò che riguarda la tecnologia intelligente e la produttività. Nel tempo libero gioca con la programmazione e quando è annoiato passa alla scacchiera, ma ama anche staccarsi dalla routine di tanto in tanto. La sua passione per mostrare alle persone come aggirare la tecnologia moderna lo motiva a scrivere di più.

Altro di Idowu Omisola

Iscriviti alla nostra Newsletter

Iscriviti alla nostra newsletter per suggerimenti tecnici, recensioni, ebook gratuiti e offerte esclusive!

Ancora un passo…!

Conferma il tuo indirizzo e-mail nell'e-mail che ti abbiamo appena inviato.

.