Mayúsculas y minúsculas en python

De ChuWiki

Veamos las funciones python para saber si una cadena tiene mayúsculas, minúsculas, convertir mayúsculas a minúsculas y las posibilidades que python nos ofrece para saber qué tipo de caracteres contiene la cadena o cambiarlos.

Métodos isupper() e islower()[editar]

Los métodos isupper() e islower() de los string nos permiten saber si la cadena está en mayúsculas (toda ella) o en minúsculas.

>>> "CADENA".isupper()
True

>>> "CADENA".islower()
False

>>> "cadena".isupper()
False

>>> "cadena".islower()
True

>>> "CaDeNa".isupper()
False

>>> "CaDeNa".islower()
False

Si queremos saber si un carácter concreto de la cadena es mayúscula o minúscula, podemos usar los mismos métodos pero cogiendo el carácter usando los corchetes y el índice. Por ejemplo, el primer carácter de la cadena es cadena[0]

>>> "CaDeNa"[0].islower()
False

>>> "CaDeNa"[0].isupper()
True

Métodos upper() y lower()[editar]

Los métodos upper() y lower() devuelven una copia de la cadena cambiando todos los caracteres a mayúsculas o minúsculas respectivamente.

>>> "CaDeNa".upper()
'CADENA'

>>> "CaDeNa".lower()
'cadena'

Método swapcase()[editar]

El método swapcase() devuelve una copia de la cadena cambiando las mayúsculas por minúsculas y viceversa

>>> "CaDeNa".swapcase()
'cAdEnA'

Métodos capitalize() y title()[editar]

El método capitalize() devuelva una copia de la cadena cambiando a minúsculas todas las letras excepto la primera que la pone en mayúsculas. El método title() devuelve una copia de la cadena en la que pone en mayúsculas la primera letra de cada palabra en la cadena y en minúsculas el resto.

>>> "ESTO es una FRASE".capitalize()
'Esto es una frase'

>>> "ESTO es una FRASE".title()
'Esto Es Una Frase'

Métodos isalpha(), isalnum(), isdecimal(), isdigit() e isnumeric()[editar]

Estos métodos permiten saber si toda la cadena tiene letras, números o letras y números.

  • isalpha() sólo tiene letras
  • isdecimal() sólo tiene números del 0 al 9
  • isdigit() sólo tiene números del 0 al 9 o superíndices del 0 al 9, como ²
  • isnumeric() sólo tiene números del 0 al 9 o superíndices del 0 al 9 o fracciones estilo ½
  • isalnum() sólo tiene letras o cualquiera de los caracteres que admite isnumeric()

Veamos unos cuantos ejemplos

>>> "cadena".isalpha()
True
>>> "cadena".isalnum()
True
>>> "cadena1".isalpha()
False
>>> "cadena1".isalnum()
True
>>> "123".isalpha()
False
>>> "123".isalnum()
True
>>> "123a".isdecimal()
False

>>> "123".isdigit()
True
>>> "123".isnumeric()
True
>>> "123".isdecimal()
True
>>> "½".isdigit()
False
>>> "½".isdecimal()
False
>>> "½".isnumeric()
True
>>> "a=b".isalpha()
False
>>> "a=b".isalnum()
False
>>> "a=b".isnumeric()
False

Método isascii()[editar]

El método isascii() devuelve True si todos los caracteres son ascii sencillos, es decir, su código ascii es del 0 al 127.

>>> "abc".isascii()
True
>>> "á".isascii()
False