0Pricing
Python Academy · Lección

Counter

Cuente elementos fácilmente

Counter es una lección gratuita de Python Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Python Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Python Academy incluye 4 lecciones en total.

¿Qué es un Counter?

Counter es una subclase de diccionario del módulo collections diseñada para contar. Se le proporcionan elementos y lleva la cuenta de cuántas veces aparece cada uno.

Impórtelo con from collections import Counter.

from collections import Counter
c = Counter(['a', 'b', 'a', 'c', 'a'])
print(c)

Contar caracteres

Pase cualquier iterable, incluida una cadena, y Counter contará cada elemento. Las cadenas se cuentan carácter por carácter.

from collections import Counter
c = Counter('mississippi')
print(c)

Consultar un recuento

Acceda a un recuento como si fuera una clave de diccionario. Una clave inexistente devuelve 0 en lugar de generar un KeyError, una diferencia útil con respecto a un dict normal.

from collections import Counter
c = Counter('banana')
print(c['a'])
print(c['z'])

Elementos más frecuentes

.most_common(n) devuelve los n elementos principales como pares (elemento, recuento), ordenados de mayor a menor frecuencia.

from collections import Counter
words = ['red', 'blue', 'red', 'green', 'blue', 'red']
c = Counter(words)
print(c.most_common(2))

Todos los elementos por frecuencia

Llame a .most_common() sin argumentos para obtener todos los elementos ordenados por frecuencia.

from collections import Counter
c = Counter('aabbbcccc')
print(c.most_common())

Actualizar recuentos

El método .update() añade más recuentos a partir de otro iterable, en lugar de reemplazarlos como haría un dict normal.

from collections import Counter
c = Counter(['a', 'b'])
c.update(['a', 'a', 'c'])
print(c)

Contar a partir de un diccionario

También puede crear un Counter directamente a partir de un mapeo de elementos a recuentos o mediante argumentos con nombre.

from collections import Counter
c = Counter(apples=3, pears=2)
print(c)
print(c['apples'])

Sumar dos Counters

El operador + combina dos Counters sumando las claves coincidentes. Los elementos cuyo total sea cero o negativo se eliminan.

from collections import Counter
a = Counter(x=2, y=1)
b = Counter(x=1, z=4)
print(a + b)

Restar recuentos

El operador - resta los recuentos y conserva únicamente los resultados positivos. Use .subtract() si desea permitir valores negativos.

from collections import Counter
a = Counter(x=5, y=2)
b = Counter(x=3, y=4)
print(a - b)

Total de todos los recuentos

Sume todos los recuentos con sum(c.values()). Esto indica cuántos elementos se contaron en total.

from collections import Counter
c = Counter('mississippi')
print('Total letters:', sum(c.values()))

Enumerar elementos

.elements() devuelve un iterador que repite cada elemento tantas veces como indique su recuento. Envuélvalo en list() para verlos todos.

from collections import Counter
c = Counter(a=2, b=1, c=3)
print(sorted(c.elements()))

Comprobación rápida

Dado c = Counter('hello'), ¿qué devuelve c['x']?

Repaso: Counter

Ha aprendido que Counter:

  • Cuenta elementos de cualquier iterable, incluidas las cadenas.
  • Devuelve 0 para las claves inexistentes en lugar de generar un error.
  • Ofrece .most_common(n) para ordenar los elementos por frecuencia.
  • Admite +, -, .update() y .elements() para trabajar con recuentos.
from collections import Counter
votes = ['yes', 'no', 'yes', 'yes', 'no']
print(Counter(votes).most_common(1))

Preguntas frecuentes

¿La lección «Counter» es gratis?

Sí — el texto completo de «Counter» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Python Academy, actualiza a CoddyKit PRO. El curso de Python Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Counter»?

Cuente elementos fácilmente Practicas Python Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Python Academy?

No se requiere experiencia previa. Python Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.

¿Cuánto tiempo toma la lección «Counter»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Python Academy?

Sí. Cada lección de Python Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Counter
  2. defaultdict
  3. deque
  4. namedtuple y OrderedDict
← Volver a Python Academy