Cómo verificar si una cadena de texto está en formato título en Python

PythonPythonBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderás cómo verificar si una cadena de texto está en formato título (title case) en Python. El laboratorio comienza explicando el concepto de formato título, un estilo de capitalización comúnmente utilizado en títulos y encabezados, donde la primera letra de cada palabra está en mayúscula, excepto para palabras menores como artículos, preposiciones y conjunciones.

Luego, crearás un script de Python llamado title_case.py que incluya una función para convertir una cadena de texto dada al formato título. El script divide la cadena en palabras, capitaliza la primera letra de cada palabra (excluyendo las palabras menores) y vuelve a unir las palabras. Finalmente, ejecutarás el script y observarás la salida, lo que demostrará la conversión de cadenas de texto al formato título.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/ControlFlowGroup(["Control Flow"]) python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python/BasicConceptsGroup -.-> python/strings("Strings") python/ControlFlowGroup -.-> python/conditional_statements("Conditional Statements") python/FunctionsGroup -.-> python/function_definition("Function Definition") python/FunctionsGroup -.-> python/build_in_functions("Build-in Functions") subgraph Lab Skills python/strings -.-> lab-559580{{"Cómo verificar si una cadena de texto está en formato título en Python"}} python/conditional_statements -.-> lab-559580{{"Cómo verificar si una cadena de texto está en formato título en Python"}} python/function_definition -.-> lab-559580{{"Cómo verificar si una cadena de texto está en formato título en Python"}} python/build_in_functions -.-> lab-559580{{"Cómo verificar si una cadena de texto está en formato título en Python"}} end

Comprender el Formato Título (Title Case)

En este paso, aprenderás sobre el formato título (title case), un estilo de capitalización común utilizado en títulos y encabezados. Comprender el formato título es esencial para dar formato correctamente al texto y garantizar su legibilidad.

El formato título se refiere a un estilo en el que la primera letra de cada palabra está en mayúscula, excepto para ciertas palabras menores como artículos (a, an, the), preposiciones (of, in, to) y conjunciones (and, but, or). Sin embargo, la primera y la última palabra del título siempre se escriben con mayúscula, independientemente de su tipo.

Comencemos creando un script de Python para explorar el formato título.

  1. Abre el editor de VS Code en el entorno de LabEx.

  2. Crea un nuevo archivo llamado title_case.py en el directorio ~/project.

    touch ~/project/title_case.py
  3. Abre el archivo title_case.py en el editor.

  4. Agrega el siguiente código de Python al archivo:

    def to_title_case(text):
        minor_words = ['a', 'an', 'the', 'of', 'in', 'to', 'and', 'but', 'or']
        words = text.split()
        title_cased_words = []
        for i, word in enumerate(words):
            if i == 0 or i == len(words) - 1 or word not in minor_words:
                title_cased_words.append(word.capitalize())
            else:
                title_cased_words.append(word.lower())
        return ' '.join(title_cased_words)
    
    text1 = "the quick brown fox"
    text2 = "learning python is fun"
    
    print(to_title_case(text1))
    print(to_title_case(text2))

    Este código define una función to_title_case que convierte una cadena de texto dada al formato título. Divide la cadena en palabras, capitaliza la primera letra de cada palabra (excepto para las palabras menores) y luego vuelve a unir las palabras.

  5. Guarda el archivo title_case.py.

  6. Ejecuta el script utilizando el comando python en la terminal:

    python ~/project/title_case.py

    Deberías ver la siguiente salida:

    The Quick Brown Fox
    Learning Python Is Fun

    Esta salida demuestra cómo el script convierte las cadenas de texto de entrada al formato título, capitalizando la primera letra de cada palabra significativa.

Usar el Método istitle()

En este paso, aprenderás cómo usar el método istitle() en Python para verificar si una cadena de texto está en formato título (title case). El método istitle() es un método incorporado de cadenas de texto que devuelve True si la cadena está en formato título y False en caso contrario.

Para entender cómo funciona istitle(), modifiquemos el script title_case.py del paso anterior.

  1. Abre el archivo title_case.py en el editor de VS Code.

  2. Agrega el siguiente código al archivo:

    def to_title_case(text):
        minor_words = ['a', 'an', 'the', 'of', 'in', 'to', 'and', 'but', 'or']
        words = text.split()
        title_cased_words = []
        for i, word in enumerate(words):
            if i == 0 or i == len(words) - 1 or word not in minor_words:
                title_cased_words.append(word.capitalize())
            else:
                title_cased_words.append(word.lower())
        return ' '.join(title_cased_words)
    
    text1 = "the quick brown fox"
    text2 = "Learning Python is fun"
    text3 = to_title_case(text1)
    
    print(text1.istitle())
    print(text2.istitle())
    print(text3.istitle())

    En este código, estamos usando el método istitle() para verificar si text1, text2 y text3 están en formato título. text1 está en minúsculas, text2 está parcialmente en formato título y text3 es el resultado de convertir text1 al formato título usando la función to_title_case del paso anterior.

  3. Guarda el archivo title_case.py.

  4. Ejecuta el script utilizando el comando python en la terminal:

    python ~/project/title_case.py

    Deberías ver la siguiente salida:

    False
    False
    True

    Esta salida muestra que text1 y text2 no están en formato título (por lo que istitle() devuelve False), mientras que text3 está en formato título (por lo que istitle() devuelve True).

Verificar la Capitalización Correcta

En este paso, aprenderás cómo combinar la función to_title_case y el método istitle() para verificar si una cadena de texto dada está correctamente capitalizada de acuerdo con las reglas del formato título (title case). Esto implica convertir la cadena al formato título y luego verificar si la cadena convertida está realmente en dicho formato.

Continuemos modificando el script title_case.py de los pasos anteriores.

  1. Abre el archivo title_case.py en el editor de VS Code.

  2. Agrega el siguiente código al archivo:

    def to_title_case(text):
        minor_words = ['a', 'an', 'the', 'of', 'in', 'to', 'and', 'but', 'or']
        words = text.split()
        title_cased_words = []
        for i, word in enumerate(words):
            if i == 0 or i == len(words) - 1 or word not in minor_words:
                title_cased_words.append(word.capitalize())
            else:
                title_cased_words.append(word.lower())
        return ' '.join(title_cased_words)
    
    def check_title_case(text):
        title_cased_text = to_title_case(text)
        return title_cased_text.istitle()
    
    text1 = "the quick brown fox"
    text2 = "Learning Python is fun"
    text3 = "The Quick Brown Fox"
    
    print(check_title_case(text1))
    print(check_title_case(text2))
    print(check_title_case(text3))

    En este código, definimos una nueva función check_title_case que toma una cadena de texto como entrada, la convierte al formato título utilizando la función to_title_case y luego utiliza el método istitle() para verificar si la cadena convertida está en formato título. Luego, probamos esta función con tres cadenas diferentes: text1, text2 y text3.

  3. Guarda el archivo title_case.py.

  4. Ejecuta el script utilizando el comando python en la terminal:

    python ~/project/title_case.py

    Deberías ver la siguiente salida:

    True
    True
    True

    Esta salida muestra que text1 y text2 se convierten al formato título y el método istitle() devuelve True. text3 ya está en formato título, y la función check_title_case lo confirma.

Resumen

En este laboratorio (lab), comenzaste por entender el concepto de formato título (title case), un estilo de capitalización en el que la primera letra de cada palabra se escribe en mayúsculas, excepto para las palabras menores como artículos, preposiciones y conjunciones (siendo siempre las primeras y últimas palabras en mayúsculas).

Luego, creaste un script de Python llamado title_case.py que define una función to_title_case para convertir una cadena de texto dada al formato título. El script divide la cadena en palabras, capitaliza las palabras adecuadas y las vuelve a unir. Finalmente, ejecutaste el script para observar la salida, lo que demuestra la conversión de cadenas de texto de muestra al formato título.