Dada una string, la tarea es encontrar las frecuencias de todos los caracteres en esa string y devolver un diccionario con key
el carácter y value
su frecuencia en la string dada.
Método #1: método ingenuo
Simplemente itere a través de la string y forme una clave en el diccionario del elemento recién ocurrido o, si el elemento ya ocurrió, aumente su valor en 1.
# Python3 code to demonstrate # each occurrence frequency using # naive method # initializing string test_str = "GeeksforGeeks" # using naive method to get count # of each element in string all_freq = {} for i in test_str: if i in all_freq: all_freq[i] += 1 else: all_freq[i] = 1 # printing result print ("Count of all characters in GeeksforGeeks is :\n " + str(all_freq))
Producción :
Count of all characters in GeeksforGeeks is : {'r': 1, 'e': 4, 'k': 2, 'G': 2, 's': 2, 'f': 1, 'o': 1}
Método #2: Usarcollections.Counter()
El método más sugerido que podría usarse para encontrar todas las ocurrencias es este método, que en realidad obtiene la frecuencia de todos los elementos y también podría usarse para imprimir la frecuencia de un solo elemento si es necesario.
# Python3 code to demonstrate # each occurrence frequency using # collections.Counter() from collections import Counter # initializing string test_str = "GeeksforGeeks" # using collections.Counter() to get # count of each element in string res = Counter(test_str) # printing result print ("Count of all characters in GeeksforGeeks is :\n " + str(res))
Producción :
Count of all characters in GeeksforGeeks is : Counter({'e': 4, 's': 2, 'k': 2, 'G': 2, 'o': 1, 'r': 1, 'f': 1})
Método #3: Usardict.get()
get()
El método se usa para verificar el carácter que apareció anteriormente en la string, si es nuevo, asigna 0 como inicial y le agrega 1, de lo contrario, agrega 1 al valor previamente retenido de ese elemento en el diccionario.
# Python3 code to demonstrate # each occurrence frequency using # dict.get() # initializing string test_str = "GeeksforGeeks" # using dict.get() to get count # of each element in string res = {} for keys in test_str: res[keys] = res.get(keys, 0) + 1 # printing result print ("Count of all characters in GeeksforGeeks is : \n" + str(res))
Producción :
Count of all characters in GeeksforGeeks is : {'k': 2, 'e': 4, 's': 2, 'G': 2, 'f': 1, 'r': 1, 'o': 1}
Método #4: Usarset() + count()
count()
junto con set()
también puede lograr esta tarea, en esto simplemente iteramos sobre la string convertida establecida y obtenemos el recuento de cada carácter en la string original y asignamos ese elemento con ese valor contado usando count()
.
# Python3 code to demonstrate # each occurrence frequency using # set() + count() # initializing string test_str = "GeeksforGeeks" # using set() + count() to get count # of each element in string res = {i : test_str.count(i) for i in set(test_str)} # printing result print ("The count of all characters in GeeksforGeeks is :\n " + str(res))
Producción :
Count of all characters in GeeksforGeeks is : {'G': 2, 's': 2, 'k': 2, 'e': 4, 'o': 1, 'r': 1, 'f': 1}
Publicación traducida automáticamente
Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA