Python | Frecuencia de cada carácter en String

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *