Listă de metode de șiruri de caractere pentru manipularea literelor majuscule și minuscule în Python

Afaceri

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 majuscule
    • str.lower()Conversia tuturor literelor în minuscule
    • str.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 majuscule
    • str.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ă

Î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
Copied title and URL