O tipo de cadea (str) de Python vén de serie con métodos cómodos para manipular letras maiúsculas e minúsculas. Podes converter entre maiúsculas e minúsculas e determinar o caso.
A seguinte información ofrécese aquí.
- Conversión entre maiúsculas e minúsculas
- Uso básico
- Manexo de caracteres de tamaño completo e de tamaño medio
str.upper()
Converte todas as letras en maiúsculasstr.lower()
Converte todas as letras en minúsculasstr.capitalize()
Converte a primeira letra en maiúscula e o resto en minúscula.str.title()
Converte a primeira letra dunha palabra en maiúsculas e o resto en minúsculas.str.swapcase()
Converte letras maiúsculas en minúsculas e letras minúsculas en maiúsculas.
- Determinar letras maiúsculas e minúsculas
str.isupper()
: determina se todas as letras están en maiúsculastr.islower()
: determina se todos os caracteres están en minúscula.str.istitle()
: Determine se é un caso de título.
- Compara cadeas sen distinguir entre maiúsculas e minúsculas
- Conversión entre maiúsculas e minúsculas
- Uso básico
- Manexo de caracteres de tamaño completo e de tamaño medio
- str.upper(): converte todas as letras en maiúsculas
- str.lower(): converte todos os caracteres en minúsculas
- str.capitalize(): converte a primeira letra en maiúsculas, o resto en minúsculas
- str.title(): converte a primeira letra dunha palabra en maiúsculas e o resto en minúsculas
- str.swapcase(): converte maiúsculas en minúsculas, minúsculas en maiúsculas
- Determinar letras maiúsculas e minúsculas
- Compara cadeas sen distinguir entre maiúsculas e minúsculas
Conversión entre maiúsculas e minúsculas
Uso básico
En primeiro lugar, explicarei o uso básico. Usaremos o método upper() para escribir todas as letras como exemplo, pero o mesmo aplícase a outros métodos.
Por comodidade, escribimos “conversión”, pero en Python, os obxectos de tipo cadea (str) non se poden actualizar, polo que a cadea orixinal (s_org no exemplo) non se modifica.
s_org = 'pYThon proGramminG laNguAge' print(s_org.upper()) # PYTHON PROGRAMMING LANGUAGE print(s_org) # pYThon proGramminG laNguAge
Se queres usar a cadea convertida máis tarde, podes almacenala nunha nova variable do seguinte xeito.
s_new = s_org.upper() print(s_new) # PYTHON PROGRAMMING LANGUAGE
Tamén é posible sobrescribir a variable orixinal.
s_org = s_org.upper() print(s_org) # PYTHON PROGRAMMING LANGUAGE
Manexo de caracteres de tamaño completo e de tamaño medio
Se un carácter distingue entre maiúsculas e minúsculas, como o alfabeto, converterase en caracteres de byte único e de dobre byte.
Os caracteres que non distinguen entre maiúsculas e minúsculas, como os números e os caracteres chineses, permanecen sen cambios. O exemplo é para upper(), pero o mesmo aplícase a outros métodos.
s_org = 'Pyhon Python 123' print(s_org.upper()) # PYHON PYTHON 123
str.upper(): converte todas as letras en maiúsculas
s_org = 'pYThon proGramminG laNguAge' print(s_org.upper()) # PYTHON PROGRAMMING LANGUAGE
str.lower(): converte todos os caracteres en minúsculas
s_org = 'pYThon proGramminG laNguAge' print(s_org.lower()) # python programming language
str.capitalize(): converte a primeira letra en maiúsculas, o resto en minúsculas
s_org = 'pYThon proGramminG laNguAge' print(s_org.capitalize()) # Python programming language
str.title(): converte a primeira letra dunha palabra en maiúsculas e o resto en minúsculas
Conversión a un caso chamado título.
s_org = 'pYThon proGramminG laNguAge' print(s_org.title()) # Python Programming Language
str.swapcase(): converte maiúsculas en minúsculas, minúsculas en maiúsculas
Intercambiar letras maiúsculas e minúsculas.
s_org = 'pYThon proGramminG laNguAge' print(s_org.swapcase()) # PytHON PROgRAMMINg LAnGUaGE
Determinar letras maiúsculas e minúsculas
Nos seguintes exemplos, os métodos chámanse directamente desde literais de cadea como ‘python’, pero o mesmo ocorre cando se almacenan en variables como nos exemplos anteriores.
str.isupper(): determina se todas as letras están en maiúscula
isupper() devolve verdadeiro se contén polo menos un carácter que distingue entre maiúsculas e minúsculas e todos eles están en maiúsculas, e falso en caso contrario.
print('PYTHON'.isupper()) # True print('Python'.isupper()) # False
Se o carácter distingue entre maiúsculas e minúsculas, mesmo os caracteres de dobre byte son xulgados.
print('PYTHON'.isupper()) # True
Se incluso se inclúe un único carácter que distingue entre maiúsculas e minúsculas, o carácter que non distingue entre maiúsculas e minúsculas é ignorado, pero se non se inclúe ningún carácter (todos os caracteres non distinguen entre maiúsculas e minúsculas), a decisión é falsa.
print('PYTHON 123'.isupper()) # True print('123'.isupper()) # False
str.islower(): determina se todos os caracteres son minúsculas
islower() devolve verdadeiro se contén polo menos un carácter que distingue entre maiúsculas e minúsculas e todos eles están en minúsculas, e falso en caso contrario.
print('python'.islower()) # True print('Python'.islower()) # False
Se o carácter distingue entre maiúsculas e minúsculas, mesmo os caracteres de dobre byte son xulgados.
print('python'.islower()) # True
Se incluso se inclúe un único carácter que distingue entre maiúsculas e minúsculas, o carácter que non distingue entre maiúsculas e minúsculas é ignorado, pero se non se inclúe ningún carácter (todos os caracteres non distinguen entre maiúsculas e minúsculas), a decisión é falsa.
print('python 123'.islower()) # True print('123'.islower()) # False
str.istitle(): determina se o caso é un caso do título.
istitle() devolve verdadeiro se a cadea é un título (a primeira letra da palabra é maiúscula, o resto son minúsculas), false en caso contrario.
print('Python Programming Language'.istitle()) # True print('PYTHON Programming Language'.istitle()) # False
Se contén caracteres que non distinguen maiúsculas e minúsculas, será falso se os caracteres que non distinguen maiúsculas e minúsculas van precedidos dunha letra minúscula.
print('★Python Programming Language'.istitle()) # True print('Python★ Programming Language'.istitle()) # True print('Py★thon Programming Language'.istitle()) # False
Teña en conta que non hai moitas cadeas como o exemplo anterior, pero é realista incluír números en números ordinais e noutros casos.
print('The 1st Team'.istitle()) # False print('The 1St Team'.istitle()) # True
Se non se inclúen caracteres que distinguen maiúsculas e minúsculas (todos os caracteres non distinguen maiúsculas e minúsculas), é falso.
print('123'.istitle()) # False
Compara cadeas sen distinguir entre maiúsculas e minúsculas
Ao comparar cadeas, as letras maiúsculas e minúsculas diferentes non se consideran equivalentes.
s1 = 'python' s2 = 'PYTHON' print(s1 == s2) # False
Se queres facer unha comparación que non distinga entre maiúsculas e minúsculas, podes usar upper() ou lower() para converter os dous e comparalos.
print(s1.upper() == s2.upper()) # True print(s1.lower() == s2.lower()) # True print(s1.capitalize() == s2.capitalize()) # True print(s1.title() == s2.title()) # True