Esta función recibe como parámetro un diccionario, cuyas listas de valores tienen el mismo tamaño y sus elementos enésimos están asociados. Y otros dos parámetros que indican la clave por la cual debe ordenarse y si es descendente o ascendente. La función debe devolver el diccionario ordenado, teniendo en cuenta de no perder la relación entre los elementos enésimos. Recibe tres argumentos: diccionario: Diccionario a ordenar. clave: Clave del diccionario recibido, por la cual ordenar. descendente: Un valor booleano, que al ser verdadero indica ordenamiento ascendente y descendente si es falso. Debe tratarse de un parámetro por defecto en True. Si el parámetro diccionario no es un tipo de dato diccionario ó el parámetro clave no se encuentra dentro de las claves del diccionario, debe devolver nulo.
def ordenar(dicc, clave, descendente=True): if type(dicc) != type({}) or clave not in dicc.keys(): return None else: if descendente: return {k:sorted(v) for k,v in dicc.items()} else: return {k:sorted(v,reverse=True) for k,v in dicc.items()} dicc = {"a": [1, 2, 3, 4, 5], "b": [1, 2, 3, 4, 5], "c": [1, 2, 3, 4, 5], "d": [1, 2, 3, 4, 5]} print(ordenar(dicc, "c"))