Tipul de șir de caractere Python (str) vine standard cu metode convenabile pentru manipularea literelor majuscule și minuscule. Puteți converti între majuscule și minuscule și determina cazul.
Aici sunt furnizate următoarele informații.
- Conversia între literele majuscule și minuscule
- Utilizare de bază
- Manipularea caracterelor de mărime întreagă și de jumătate de mărime
str.upper()
Conversia tuturor literelor în majusculestr.lower()
Conversia tuturor literelor în minusculestr.capitalize()
Convertiți prima literă în majusculă și restul în minusculă.str.title()
Convertiți prima literă a unui cuvânt în majusculă și restul în minusculă.str.swapcase()
Conversia literelor majuscule în minuscule și a literelor minuscule în majuscule.
- Determinați literele majuscule și minuscule
str.isupper()
: Determinați dacă toate literele sunt majusculestr.islower()
: Determinați dacă toate caracterele sunt minuscule.str.istitle()
: Determinați dacă este vorba de un caz de titlu.
- Compară șirurile de caractere într-o manieră care nu ține cont de majuscule și minuscule
- Conversia între literele majuscule și minuscule
- Utilizare de bază
- Manipularea caracterelor de mărime întreagă și de jumătate de mărime
- str.upper(): convertește toate literele în majuscule
- str.lower(): convertește toate caracterele în minuscule
- str.capitalize(): convertește prima literă în majusculă, restul în minusculă
- str.title(): convertește prima literă a unui cuvânt în majusculă și restul în minusculă
- str.swapcase(): convertește majusculele în minuscule, minusculele în majuscule
- Determinați literele majuscule și minuscule
- Compară șirurile de caractere într-o manieră care nu ține cont de majuscule și minuscule
Conversia între literele majuscule și minuscule
Utilizare de bază
În primul rând, voi explica utilizarea de bază. Vom folosi ca exemplu metoda upper() pentru a scrie toate literele cu majuscule, dar același lucru este valabil și pentru alte metode.
Pentru comoditate, scriem „conversie”, dar în Python, obiectele de tip string (str) nu pot fi actualizate, astfel încât șirul original (s_org în exemplu) nu este modificat.
s_org = 'pYThon proGramminG laNguAge' print(s_org.upper()) # PYTHON PROGRAMMING LANGUAGE print(s_org) # pYThon proGramminG laNguAge
Dacă doriți să utilizați ulterior șirul convertit, îl puteți stoca într-o nouă variabilă, după cum urmează.
s_new = s_org.upper() print(s_new) # PYTHON PROGRAMMING LANGUAGE
De asemenea, este posibil să se suprascrie variabila originală.
s_org = s_org.upper() print(s_org) # PYTHON PROGRAMMING LANGUAGE
Manipularea caracterelor de mărime întreagă și de jumătate de mărime
În cazul în care un caracter este sensibil la majuscule și minuscule, cum ar fi alfabetul, acesta va fi convertit atât în caractere cu un singur octet, cât și în caractere cu doi octeți.
Caracterele care nu fac distincție între majuscule și minuscule, cum ar fi numerele și caracterele chinezești, rămân neschimbate. Exemplul este pentru upper(), dar același lucru este valabil și pentru alte metode.
s_org = 'Pyhon Python 123' print(s_org.upper()) # PYHON PYTHON 123
str.upper(): convertește toate literele în majuscule
s_org = 'pYThon proGramminG laNguAge' print(s_org.upper()) # PYTHON PROGRAMMING LANGUAGE
str.lower(): convertește toate caracterele în minuscule
s_org = 'pYThon proGramminG laNguAge' print(s_org.lower()) # python programming language
str.capitalize(): convertește prima literă în majusculă, restul în minusculă
s_org = 'pYThon proGramminG laNguAge' print(s_org.capitalize()) # Python programming language
str.title(): convertește prima literă a unui cuvânt în majusculă și restul în minusculă
Conversia într-un așa-numit caz de titlu.
s_org = 'pYThon proGramminG laNguAge' print(s_org.title()) # Python Programming Language
str.swapcase(): convertește majusculele în minuscule, minusculele în majuscule
Schimbați literele majuscule și minuscule.
s_org = 'pYThon proGramminG laNguAge' print(s_org.swapcase()) # PytHON PROgRAMMINg LAnGUaGE
Determinați literele majuscule și minuscule
În exemplele următoare, metodele sunt apelate direct din șiruri literale, cum ar fi „python”, dar același lucru este valabil și atunci când sunt stocate în variabile, ca în exemplele anterioare.
str.isupper(): determină dacă toate literele sunt majuscule
isupper() returnează true dacă conține cel puțin un caracter sensibil la majuscule și dacă toate sunt majuscule și false în caz contrar.
print('PYTHON'.isupper()) # True print('Python'.isupper()) # False
În cazul în care caracterul este sensibil la majuscule și minuscule, sunt luate în considerare chiar și caracterele cu două octeți.
print('PYTHON'.isupper()) # True
Dacă este inclus chiar și un singur caracter sensibil la majuscule și minuscule, caracterul nesensibil la majuscule este ignorat, dar dacă nu este inclus niciun caracter sensibil la majuscule și minuscule (toate caracterele sunt nesensibile la majuscule și minuscule), decizia este falsă.
print('PYTHON 123'.isupper()) # True print('123'.isupper()) # False
str.islower(): determină dacă toate caracterele sunt minuscule
islower() returnează true în cazul în care conține cel puțin un caracter sensibil la majuscule și toate sunt minuscule, iar în caz contrar false.
print('python'.islower()) # True print('Python'.islower()) # False
În cazul în care caracterul este sensibil la majuscule și minuscule, sunt luate în considerare chiar și caracterele cu două octeți.
print('python'.islower()) # True
Dacă este inclus chiar și un singur caracter sensibil la majuscule și minuscule, caracterul nesensibil la majuscule este ignorat, dar dacă nu este inclus niciun caracter sensibil la majuscule și minuscule (toate caracterele sunt nesensibile la majuscule și minuscule), decizia este falsă.
print('python 123'.islower()) # True print('123'.islower()) # False
str.istitle(): Determină dacă este vorba de un titlu.
istitle() returnează true dacă șirul este un titlu (prima literă a cuvântului este majusculă, restul sunt minuscule), iar în caz contrar false.
print('Python Programming Language'.istitle()) # True print('PYTHON Programming Language'.istitle()) # False
În cazul în care conține caractere care nu țin cont de majuscule sau minuscule, va fi fals dacă caracterele care nu țin cont de majuscule sunt precedate de o literă minusculă.
print('★Python Programming Language'.istitle()) # True print('Python★ Programming Language'.istitle()) # True print('Py★thon Programming Language'.istitle()) # False
Rețineți că nu există multe șiruri de caractere ca în exemplul de mai sus, dar este realist să se includă numere în numere ordinale și în alte cazuri.
print('The 1st Team'.istitle()) # False print('The 1St Team'.istitle()) # True
În cazul în care nu sunt incluse caractere case-sensitive (toate caracterele sunt case-insensitive), false.
print('123'.istitle()) # False
Compară șirurile de caractere într-o manieră care nu ține cont de majuscule și minuscule
Atunci când se compară șiruri de caractere, literele majuscule și minuscule diferite nu sunt considerate echivalente.
s1 = 'python' s2 = 'PYTHON' print(s1 == s2) # False
Dacă doriți să faceți o comparație care nu ține cont de majuscule și minuscule, puteți utiliza upper() sau lower() pentru a le converti și a le compara.
print(s1.upper() == s2.upper()) # True print(s1.lower() == s2.lower()) # True print(s1.capitalize() == s2.capitalize()) # True print(s1.title() == s2.title()) # True