0

Make a counter for a dictionary

I have to make a counter for a dictionary, basically count the complements in a set, but I don't know how, can someone please help me? I'm new on python.

8th Nov 2016, 2:00 AM
Alvaro Mh
Alvaro Mh - avatar
7 Respostas
+ 1
>>>from collections import Counter >>> Counter(['apple','red','apple','red','red','pear']) Counter({'red': 3, 'apple': 2, 'pear': 1})
8th Nov 2016, 4:20 AM
மனோஜ்குமார் பழனிச்சாமி
மனோஜ்குமார் பழனிச்சாமி - avatar
0
I don't know if what do you mean is something like this Try iterating all the keys and values in the dictionary and then inside the for use the 'in' operator to check if the set contains that value. If the answer is yes, just add 1 to the counter.
8th Nov 2016, 2:10 AM
Narciso Nuñez Arias
Narciso Nuñez Arias - avatar
0
Bueno, al juzgar por tu nombre creo que hablas español, así me sé explicar mejor. Tengo que hacer un código en el que el usuario establezca un conjunto ({hola, como, cuando, cuando, ocho}), y cuando se termine de capturar, que el programa arroje por ejemplo "hola: 1, cuando: 2, como: 1, ocho:1"
8th Nov 2016, 2:17 AM
Alvaro Mh
Alvaro Mh - avatar
0
Es que eso no es posible, los conjuntos siempre van a tener 1 solo elemento de cada uno. Automáticamente el conjunto se cree el va a borrar los valores repetidos
8th Nov 2016, 2:20 AM
Narciso Nuñez Arias
Narciso Nuñez Arias - avatar
0
Eso lo entiendo, pero quiero saber si hay alguna forma de hacer como un contador, o sea, que me diga cuántas veces se repitió cada elemento del conjunto.
8th Nov 2016, 2:24 AM
Alvaro Mh
Alvaro Mh - avatar
0
En mi experiencia eso no es posible directamente pero puedes hacer algunos movimientos como ir creando el diccionario a medida que van introduciendo los valores. Verifica si el diccionario tiene ese valor como ley, sino lo tiene agregalo y si lo tiene sumale uno al valor asociado... 3s lo que se me ocurre ahora mismo
8th Nov 2016, 2:41 AM
Narciso Nuñez Arias
Narciso Nuñez Arias - avatar
0
Muchas gracias!
8th Nov 2016, 4:12 AM
Alvaro Mh
Alvaro Mh - avatar