Python Language Cambiar la capitalización de una cadena


Ejemplo

El tipo de cadena de Python proporciona muchas funciones que actúan sobre la capitalización de una cadena. Éstos incluyen :

  • str.casefold
  • str.upper
  • str.lower
  • str.capitalize
  • str.title
  • str.swapcase

Con cadenas de Unicode (el valor predeterminado en Python 3), estas operaciones no son asignaciones 1: 1 o reversibles. La mayoría de estas operaciones están destinadas a fines de visualización, en lugar de a la normalización.


Python 3.x 3.3

str.casefold()

str.casefold crea una cadena en minúsculas que es adecuada para comparaciones que no distinguen entre mayúsculas y minúsculas. Esto es más agresivo que str.lower y puede modificar cadenas que ya están en minúsculas o hacer que las cadenas crezcan en longitud, y no está diseñada para fines de visualización.

"XßΣ".casefold()
# 'xssσ'

"XßΣ".lower()
# 'xßς'

Las transformaciones que tienen lugar en Casefolding están definidas por Unicode Consortium en el archivo CaseFolding.txt en su sitio web.


str.upper()

str.upper toma todos los caracteres de una cadena y los convierte a su equivalente en mayúsculas, por ejemplo:

"This is a 'string'.".upper()
# "THIS IS A 'STRING'."

str.lower()

str.lower hace lo contrario; toma todos los caracteres de una cadena y los convierte a su equivalente en minúsculas:

"This IS a 'string'.".lower()
# "this is a 'string'."

str.capitalize()

str.capitalize devuelve una versión en mayúscula de la cadena, es decir, hace que el primer carácter tenga mayúsculas y el resto sea inferior:

"this Is A 'String'.".capitalize() # Capitalizes the first character and lowercases all others
# "This is a 'string'."

str.title()

str.title devuelve el título de la versión de la cadena, es decir, todas las letras al principio de una palabra están en mayúsculas y las demás en minúsculas:

"this Is a 'String'".title()
# "This Is A 'String'"

str.swapcase()

str.swapcase devuelve un nuevo objeto de cadena en el que todos los caracteres en minúsculas se cambian a mayúsculas y todos los caracteres en mayúsculas a inferiores:

"this iS A STRiNG".swapcase() #Swaps case of each character
# "THIS Is a strIng"

Uso como métodos de clase str

Vale la pena señalar que estos métodos pueden llamarse en objetos de cadena (como se muestra arriba) o como un método de clase de la clase str (con una llamada explícita a str.upper , etc.)

str.upper("This is a 'string'")
# "THIS IS A 'STRING'"

Esto es más útil cuando se aplica uno de estos métodos a muchas cadenas a la vez, por ejemplo, una función de map .

map(str.upper,["These","are","some","'strings'"])
# ['THESE', 'ARE', 'SOME', "'STRINGS'"]