43. Actualizar una fila

Crea una función para actualizar una fila existente en una lista de registros basándose en su id.

La función debe aceptar la lista actual de registros, un id_a_actualizar y un diccionario con los nuevos_datos para esa fila. Devolverá una nueva lista de registros con la fila actualizada. Si el id no existe, la lista debe permanecer sin cambios.

def actualizar_registro(registros: list[dict], id_a_actualizar: int, nuevos_datos: dict) -> list[dict]:
    # Tu código aquí
    pass

# Ejemplo
# datos_actualizados = {"edad": 31, "ciudad": "Madrid"}
# registros_actualizados = actualizar_registro(registros_ejemplo, 1, datos_actualizados)
# print(registros_actualizados)
# Resultado esperado:
# [
#   {"id": 1, "nombre": "Alice", "edad": 31, "ciudad": "Madrid"},
#   {"id": 2, "nombre": "Bob", "edad": 24, "ciudad": "Londres"},
#   {"id": 3, "nombre": "Charlie", "edad": 35, "ciudad": "París"}
# ]
#
# registros_sin_cambio = actualizar_registro(registros_ejemplo, 99, {"nombre": "Inexistente"})
# print(registros_sin_cambio == registros_ejemplo) # True

Ratoncito

Implementa la actualización, sobrescribiendo los campos existentes con los nuevos_datos y añadiendo los nuevos. Asegúrate de que solo la fila correspondiente al id sea modificada y que la lista original no se altere.

Dragón

Añade validación para los nuevos_datos (por ejemplo, si se intenta modificar el id). Considera la eficiencia para listas muy grandes, donde una búsqueda lineal podría ser lenta.

Este trabajo está bajo una licencia Attribution-NonCommercial-NoDerivatives 4.0 International.

¿Me invitas a un café?

Visitantes en tiempo real

Estás solo: 🐱