¿Cómo contar palabras en Python?

Contenido del Bootcamp Dirigido por: | Última modificación: 22 de mayo de 2024 | Tiempo de Lectura: 4 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

¿Te has preguntado alguna vez cómo contar palabras en Python? Este lenguaje de programación es conocido por su simplicidad y versatilidad, y contar palabras es una de esas tareas básicas que todo programador debería conocer. En este artículo, te explicaré cómo hacerlo de manera sencilla y práctica, utilizando diferentes enfoques y técnicas. ¡Vamos allá!

Contar palabras en un texto es una habilidad útil en muchos contextos: desde el procesamiento de datos hasta el análisis de texto, pasando por la creación de aplicaciones web y scripts automatizados. Entender cómo contar palabras en Python te permitirá manejar y analizar textos de manera más eficiente.

Contar palabras en Python con split() y len()

La forma más directa de contar palabras en Python es utilizando los métodos split() y len(). El método split() divide una cadena en una lista de palabras, y len() cuenta el número de elementos en la lista.

Ejemplo básico

Vamos a empezar con un ejemplo sencillo:

#contar palabras en Python
oracion = input("Ingrese una oración: ")
palabras = oracion.split()
numero_de_palabras = len(palabras)

print("Número de palabras en la oración:", numero_de_palabras)

Explicación del código

  1. Entrada de usuario: input("Ingrese una oración: ") captura la oración ingresada por el usuario.
  2. División de la cadena: oracion.split() divide la oración en una lista de palabras.
  3. Conteo de palabras: len(palabras) cuenta el número de palabras en la lista.
  4. Impresión del resultado: print() muestra el número de palabras.

Este código es muy útil para contar palabras en una oración simple.

Contar palabras usando un ciclo for

Otra forma de contar palabras en Python es utilizando un ciclo for. Esta técnica es útil cuando queremos realizar operaciones adicionales en cada palabra.

Ejemplo básico

Aquí tienes un ejemplo de cómo hacerlo:

#contar palabras en Python
oracion = input("Ingrese una oración: ")
palabras = oracion.split()
contador = 0

for palabra in palabras:
    contador += 1

print("Número de palabras en la oración:", contador)
oracion = input("Ingrese una oración: ")
palabras = oracion.split()
contador = 0

for palabra in palabras:
    contador += 1

print("Número de palabras en la oración:", contador)

Explicación del código

  1. Entrada de usuario y división de cadena: Igual que en el ejemplo anterior.
  2. Inicialización del contador: contador = 0 inicializa el contador en cero.
  3. Ciclo for: for palabra in palabras: recorre cada palabra en la lista.
  4. Incremento del contador: contador += 1 incrementa el contador por cada palabra.
  5. Impresión del resultado: Igual que en el ejemplo anterior.

Este enfoque es útil cuando necesitas realizar otras operaciones dentro del ciclo.

Contar palabras con la función count()

La función count() en Python se utiliza para contar el número de veces que un elemento aparece en una secuencia. Aunque no es tan directa para contar palabras en una oración completa, puede ser útil en ciertos contextos.

Ejemplo básico

Imaginemos que queremos contar cuántas veces aparece una palabra específica en un texto:

#contar palabras en Python
oracion = input("Ingrese una oración: ")
palabra_buscada = input("Ingrese la palabra a buscar: ")
conteo = oracion.split().count(palabra_buscada)

print(f"La palabra '{palabra_buscada}' aparece {conteo} veces en la oración.")

Explicación del código

  1. Entrada de usuario y división de cadena: Igual que en los ejemplos anteriores.
  2. Búsqueda de palabra: palabra_buscada = input("Ingrese la palabra a buscar: ") captura la palabra a buscar.
  3. Conteo de palabras: oracion.split().count(palabra_buscada) cuenta las apariciones de la palabra buscada.
  4. Impresión del resultado: print(f"La palabra '{palabra_buscada}' aparece {conteo} veces en la oración.") muestra el resultado.

Este método es útil para buscar y contar palabras específicas en un texto.

Contar palabras usando collections.Counter

La clase Counter del módulo collections es una herramienta poderosa para contar elementos en una colección. Es especialmente útil para contar palabras en un texto largo.

Ejemplo básico

Aquí tienes un ejemplo de cómo usar Counter para contar palabras en una oración:

#contar palabras en Python
from collections import Counter

oracion = input("Ingrese una oración: ")
palabras = oracion.split()
contador_de_palabras = Counter(palabras)

print("Conteo de palabras:", contador_de_palabras)

Explicación del código

  1. Importación de Counter: from collections import Counter importa la clase Counter.
  2. Entrada de usuario y división de cadena: Igual que en los ejemplos anteriores.
  3. Creación del contador: contador_de_palabras = Counter(palabras) crea un contador de palabras.
  4. Impresión del resultado: print("Conteo de palabras:", contador_de_palabras) muestra el conteo de palabras.

Counter no solo cuenta las palabras, sino que también te muestra cuántas veces aparece cada palabra en el texto.

Contar palabras en Python es una tarea simple pero esencial que puedes realizar de varias maneras. Ya sea que utilices split() y len(), un ciclo for, la función count(), o la clase Counter, cada método tiene sus ventajas dependiendo del contexto. ¡Experimenta con estos métodos y encuentra el que mejor se adapte a tus necesidades!

Si te ha gustado este artículo y quieres aprender más sobre programación en Python y otros lenguajes, ¡apúntate al Bootcamp de KeepCoding! En nuestro Bootcamp de Big data, inteligencia artificial y data sciencce, aprenderás desde los fundamentos hasta técnicas avanzadas que te permitirán transformar tu carrera y entrar en el apasionante mundo de la tecnología. No dejes pasar esta oportunidad de cambiar tu vida y unirte a una industria en constante crecimiento con excelentes oportunidades laborales.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Big Data, IA & Machine Learning

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado