Veamos cómo combinar caracteres similares en una lista.
Ejemplo :
Entrada: [‘g’, ‘e’, ’e’, ’k’, ‘s’, ‘f’, ‘o’, ‘r’, ‘g’, ‘e’, ’e’, ’k’ , ‘s’]
Salida: [‘gg’, ‘eeee’, ‘kk’, ‘ss’, ‘f’, ‘o’, ‘r’]
Usaremos el método get() de la clase de diccionario.
diccionario.get()
El método get() devuelve el valor del elemento con la clave especificada.
Sintaxis: dictionary.get(nombre clave, valor)
Parámetros:
- keyname : El nombre clave del elemento del diccionario.
- valor: (opcional) si la clave especificada no existe, se devuelve un valor.
Devoluciones: valor del artículo con la clave especificada
Algoritmo:
- Declarar la lista.
- Declarar un diccionario.
- Iterar sobre la lista, usando el método get(), si se encuentra una nueva clave, entonces se le asigna el valor 0 y se agrega 1 haciendo que el valor final sea 1. De lo contrario, si la clave se repite, entonces se agrega 1 a la valor previamente calculado. Entonces, de esta manera, ahora cada tecla tiene un valor asignado y se registra la frecuencia de todos los caracteres.
- Separe todas las claves y los valores y guárdelos en 2 listas diferentes.
- Utilice la función zip() para almacenar el producto de las claves y sus respectivos valores en la lista de resultados.
- Muestre el resultado.
Ejemplo 1 :
python3
# declaring the list of characters mylist = ['g', 'e', 'e', 'k', 's', 'f', 'o', 'r', 'g', 'e', 'e', 'k', 's'] # declaring the dictionary dictionary = {} # counting the frequency of the keys for key in mylist: dictionary[key] = dictionary.get(key, 0) + 1 # storing the of keys and values k = list(dictionary.keys()) v = list(dictionary.values()) # declaring the result list result = [] # storing the product of keys and # their respective values in result for i, j in zip(k, v): result.append(i * j) # displaying the result print(result)
Producción :
['gg', 'eeee', 'kk', 'ss', 'f', 'o', 'r']
Ejemplo 2:
python3
# declaring the list of characters mylist = ['p', 'y', 't', 'h', 'o', 'n', 't', 'u', 't', 'o', 'r', 'i', 'a', 'l'] # declaring the dictionary dictionary = {} # counting the frequency of the keys for key in mylist: dictionary[key] = dictionary.get(key, 0) + 1 # storing the of keys and values k = list(dictionary.keys()) v = list(dictionary.values()) # declaring the result list result = [] # storing the product of keys and # their respective values in result for i, j in zip(k, v): result.append(i * j) # displaying the result print(result)
Producción :
['a', 'h', 'i', 'l', 'n', 'oo', 'p', 'r', 'ttt', 'u', 'y']
Publicación traducida automáticamente
Artículo escrito por gauravbabbar25 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA