Ce face str.upper(), lower(), casefold() și swapcase()
upper() face toate literele mari, lower() toate mici, iar swapcase() le inversează. Diacriticele sunt tratate corect: "ș".upper() este "Ș".
casefold() este o variantă mai „agresivă” a lui lower(), gândită pentru comparații fără diferențe de majuscule în orice limbă (de exemplu "ß" devine "ss"). Pentru bytes, upper(), lower() și swapcase() schimbă doar literele ASCII.
Ce returnează
Un text nou.
Exemple
Exemplul 1: Transformări
oras = "Brașov"
print(oras.upper())
print(oras.lower())
print(oras.swapcase())
print("Straße".lower(), "Straße".casefold())
Rezultat
BRAȘOV
brașov
bRAȘOV
straße strasse
Exemplul 2: Comparație fără diferențe de majuscule
raspuns = " DA "
if raspuns.strip().casefold() == "da":
print("Confirmat")
print(b"Abc".upper(), "ăîâșț".upper())
Rezultat
Confirmat
b'ABC' ĂÎÂȘȚ
Greșeli frecvente
- Compari
text.lower() == "Da": partea din dreapta are majusculă, deci nu este niciodată egal. Scrie ambele părți cu litere mici.
Comenzi înrudite
str.capitalize() și str.title(): capitalize() face prima literă a textului mare; title() face mare prima literă a fiecărui cuvânt.str.islower(), isupper() și istitle(): Verifică dacă literele unui text sunt toate mici, toate mari, sau în formă de titlu.string.capwords(): Pune majusculă la începutul fiecărui cuvânt, cuvintele fiind separate doar prin spații.