Programa de Python para eliminar el elemento Nth del valor de la clave Kth del diccionario

Dado un diccionario con listas de valores, nuestra tarea es escribir un programa en Python para eliminar el elemento N de los valores de la clave Kth.

Ejemplos:

Entrada: test_dict = {“gfg”: [9, 4, 5, 2, 3, 2], “es”: [1, 2, 3, 4, 3, 2], “mejor”: [2, 2, 2, 3, 4]}, K, N = “gfg”, 2

Salida: {‘gfg’: [9, 4, 5, 3], ‘es’: [1, 2, 3, 4, 3, 2], ‘mejor’: [2, 2, 2, 3, 4] }

Explicación: se eliminaron 2 de la lista de valores de la clave «gfg».

Entrada: test_dict = {“gfg”: [9, 4, 5, 2, 3, 2], “es”: [1, 2, 3, 4, 3, 2], “mejor”: [2, 2, 2, 3, 4]}, K, N = “gfg”, 4

Salida: {‘gfg’: [9, 5, 2, 3, 2], ‘es’: [1, 2, 3, 4, 3, 2], ‘mejor’: [2, 2, 2, 3, 4]}

Explicación: 4 eliminados de la lista de valores de la clave «gfg».

Método n. ° 1: usar bucle + declaraciones condicionales

En esto, se realiza la reasignación de todas las claves junto con sus valores, cuando ocurre la clave K, se omite la ocurrencia de N de su lista de valores.

Python3

# Python3 code to demonstrate working of
# Remove N from K key's value in dictionary values list
# Using loop + conditional statements
  
# initializing dictionary
test_dict = {"gfg" : [9, 4, 5, 2, 3, 2],
             "is" : [1, 2, 3, 4, 3, 2],
             "best" : [2, 2, 2, 3, 4]}
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
# initializing K, N 
K, N = "gfg", 2
  
res = dict()
for key, val in test_dict.items():
      
    # reassigning omitting desired number
    res[key] = (val if key != K else [idx for idx in val if idx != N])
  
# printing result
print("The altered dictionary : " + str(res))

Producción:

El diccionario original es: {‘gfg’: [9, 4, 5, 2, 3, 2], ‘is’: [1, 2, 3, 4, 3, 2], ‘best’: [2, 2 , 2, 3, 4]}

El diccionario alterado: {‘gfg’: [9, 4, 5, 3], ‘is’: [1, 2, 3, 4, 3, 2], ‘best’: [2, 2, 2, 3, 4]}

Método #2: Usar la comprensión del diccionario

En esto, realizamos una tarea similar al método anterior, la diferencia es el uso de la comprensión del diccionario en lugar de recorrer las teclas usando el bucle convencional.

Python3

# Python3 code to demonstrate working of
# Remove N from K key's value in dictionary values list
# Using dictionary comprehension
  
# initializing dictionary
test_dict = {"gfg" : [9, 4, 5, 2, 3, 2],
             "is" : [1, 2, 3, 4, 3, 2], 
             "best" : [2, 2, 2, 3, 4]}
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
# initializing K, N 
K, N = "gfg", 2
  
# dictionary comprehension used for shorthand
res = {key : (val if key != K else [idx for idx in val if idx != N]) for key, val in test_dict.items()}
  
# printing result
print("The altered dictionary : " + str(res))

Producción:

El diccionario original es: {‘gfg’: [9, 4, 5, 2, 3, 2], ‘is’: [1, 2, 3, 4, 3, 2], ‘best’: [2, 2 , 2, 3, 4]}

El diccionario alterado: {‘gfg’: [9, 4, 5, 3], ‘is’: [1, 2, 3, 4, 3, 2], ‘best’: [2, 2, 2, 3, 4]}

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 *