Capitalizzare la prima lettera di ogni parola in Python
-
Scrivi in maiuscolo la prima lettera di ogni parola in Python usando il metodo
string.title()
-
Scrivi in maiuscolo ogni parola in Python usando il metodo
string.capwords()
-
Scrivi in maiuscolo ogni parola in Python usando i metodi
string.split()
estring.join()
![Capitalizzare la prima lettera di ogni parola in Python](/img/Python/feature-image---python-capitalize-each-word.webp)
Questo tutorial spiegherà vari metodi per rendere maiuscola la prima lettera di ogni parola nella stringa in Python. Se abbiamo una stringa come hey! what's up?
e vogliamo convertirlo in Hey! What's Up?
. Possiamo farlo utilizzando un metodo disponibile o separando ogni parola della stringa, mettendo in maiuscolo la prima lettera di ogni parola e quindi unendo di nuovo la stringa.
Potremmo anche avere stringhe come hey... what's up?
e vogliamo mantenere la spaziatura originale della stringa. Questo tutorial esaminerà i vari metodi per risolvere questi problemi.
Scrivi in maiuscolo la prima lettera di ogni parola in Python usando il metodo string.title()
string.title()
è un metodo integrato che accetta una stringa come input e restituisce la stringa con il primo carattere in maiuscolo di ogni parola. Il metodo string.title()
non cambia la spaziatura originale della stringa. L’esempio di codice seguente mostra come utilizzare il metodo string.title()
per rendere maiuscola ogni lettera di una parola in Python.
string = "hey! what's up?"
print(string)
print(string.title())
Produzione:
Hey! What's up?
Hey! What'S Up?
Come si può notare nell’esempio precedente, il metodo string.title()
non funziona bene con i segni di punteggiatura, poiché rende maiuscola la lettera dopo i segni di punteggiatura.
Scrivi in maiuscolo ogni parola in Python usando il metodo string.capwords()
La string.capwords(string, sep)
del modulo string
prende la stringa come primo parametro e sep
come secondo parametro e restituisce la stringa con il primo carattere maiuscolo di ogni parola, separato in base del parametro sep
. Se nessun valore viene passato al parametro sep
o impostato su None
, gli spazi bianchi saranno usati come separatori, e un singolo spazio bianco sostituisce uno o più spazi bianchi.
Il codice di esempio seguente mostra come utilizzare il metodo string.capwords()
per rendere maiuscola ogni parola della stringa:
import string
mystring = "hey! what's up?"
print(mystring)
print(string.capwords(mystring))
Produzione:
hey! what's up?
Hey! What's Up?
Il problema con questo metodo è che o mancheranno parole come 'hello'
o se passiamo il '
come parametro sep
, metterà in maiuscolo what's
in what'S
, come mostrato nel codice di esempio sotto:
import string
mystring = "'hello' what's up?"
print(mystring)
print(string.capwords(mystring))
print(string.capwords(mystring, sep="'"))
Produzione:
'hello' what's up?
'hello' What's Up?
'Hello' what'S up?
Scrivi in maiuscolo ogni parola in Python usando i metodi string.split()
e string.join()
Il metodo string.split(separator,..)
converte la stringa in una lista utilizzando il valore fornito del parametro separator
come separatore. Il metodo string.join(iterable)
prende l’oggetto iterabile come input e lo converte in una stringa usando l’argomento stringa fornito come separatore di parole.
Il codice di esempio sotto mostra come usare i metodi string.split()
e string.join()
per rendere maiuscola la prima lettera di ogni parola in Python.
import re
s = "'hello' what's up?"
print(s)
slist = []
for word in s.split():
if word[0] in ("'", '"', "("):
word = word[0] + word[1].upper() + word[2:]
slist.append(word)
else:
word = word[0].upper() + word[1:]
slist.append(word)
new_string = " ".join(slist)
print(new_string)
Produzione:
'hello' what's up?
'Hello' What's Up?
Come si può notare nell’esempio sopra, questo metodo può gestire le citazioni, i nomi possessivi e le parole tra parentesi. Ma la spaziatura originale della stringa andrà persa in questo metodo.
Articolo correlato - Python String
- Come controllare una stringa è vuota in modo pitonico
- Converti una stringa in nome variabile in Python
- Come rimuovere gli spazi bianchi in una stringa in Python
- Estrai numeri da una stringa in Python
- Come convertire una stringa in datario in Python
- Come convertire una stringa in minuscola in Python 2 e 3