diccionario de ordenación de Python

Funciones y métodos de Python

Para ordenar un diccionario por valor en Python, puede usar la función sorted () . La función sorted () de Python se puede utilizar para ordenar los diccionarios por clave, lo que permite un método de clasificación personalizado.  sorted () toma tres argumentos: objeto, clave y reverso .

Los diccionarios son estructuras de datos desordenadas. Usan una estructura de mapeo para almacenar datos. Los diccionarios asignan claves a valores, creando pares que contienen datos relacionados.

Con el método sorted () de Python, puede ordenar el contenido de un diccionario por valor. Por ejemplo, para clasificar la popularidad de los elementos en un menú de café, o enumerar esos elementos en orden alfabético, puede utilizar el método sorted () de Python. Este tutorial explicará cómo funciona el método sorted () y cómo puede usarlo para ordenar el contenido de un diccionario. & Nbsp;




Python sorted () Refresher < / h2>

La función sorted () incorporada de Python se puede utilizar para clasificar objetos iterables por una clave, como listas, tuplas y diccionarios. La función sorted () ordena los elementos del objeto iterable especificado y crea un nuevo objeto con los valores recién ordenados.

Aquí está la sintaxis del método sorted () :

sorted (objeto, clave, reverso)

El método toma tres parámetros:

  • objeto : el objeto iterable que desea ordenar (obligatorio)
  • clave : la función que le permite realizar operaciones de clasificación personalizadas (opcional)
  • inverso : especifica si el objeto debe clasificarse en orden descendente (opcional)

Como puede ver, & ldquo; objeto & rdquo;  es el único parámetro obligatorio. Si decide no utilizar los parámetros opcionales & ldquo; key & rdquo; y & ldquo; reverse & rdquo; , Python clasificará automáticamente el objeto en orden ascendente.

El 81% de los participantes afirmaron que se sentían más seguros de sus perspectivas laborales tecnológicas después de asistir a un bootcamp. Asigne a un bootcamp hoy mismo.

El graduado promedio de bootcamp pasó menos de seis meses en la transición profesional, desde comenzar un bootcamp hasta encontrar su primer trabajo.

Nota: Career Karma escribió un guía completa sobre los métodos sort () y sorted () en Python. Si desea obtener más información sobre este método y el parámetro key , consulte nuestro tutorial de Python sort () .

Veamos un ejemplo rápido para ilustrar cómo funciona el método sorted (). & nbsp;


Digamos que estamos operando una cafetería y queremos recuperar una lista alfabética de nuestros clientes de Coffee Club (lealtad). Ya tenemos una lista de clientes, pero está ordenado por fecha de registro. Podríamos usar el siguiente código para ordenar nuestra lista:

 clientes = [' Kaley Fernandez', 'Darius Rowland',' Isaac Borthwick', 'Alexandria Kidd'] sorted_customers = sorted (clientes) print (sorted_customers) 

Nuestro El código ordena la matriz clientes y devuelve lo siguiente:

['Alexandria Kidd',' Darius Rowland', 'Isaac Borthwick',' Kaley Fernandez' ]

En la primera línea de nuestro código, declaramos una lista que almacena los nombres de nuestros clientes; esta lista se llama: clientes. Luego, usamos el código < > método sorted () para ordenar la lista de nombres de clientes en orden ascendente; esta nueva lista se llama: sorted_customers . Finalmente, imprimimos la lista recién ordenada en la consola usando la función print () .




Ordenar un diccionario por valor

Let & rsquo; s dicen que tiene un diccionario y desea ordenarlo por pares clave-valor. Puede hacer esto usando dos funciones juntas: items () y sorted () . & Nbsp;

Los items ( ) La función le permite recuperar los elementos de un diccionario. Podemos usar esta función en combinación con la función sorted () y un parámetro personalizado key para ordenar un diccionario por valor. Considere los siguientes dos ejemplos.

Ejemplo 1: Orden descendente

Volvamos a la cafetería. Supongamos que tenemos un diccionario que almacena los elementos de nuestro menú de café, así como cuántos de cada elemento se ordenaron en el último mes. Queremos ver cuál fue el café más popular el mes pasado, por lo que decidimos ordenar el diccionario de pedidos en orden descendente de valores.

Aquí hay un programa que podríamos usar para ordenar el contenido de nuestro diccionario por valor:

 orders = {'cappuccino': 54,' latte': 56, 'espresso': 72,' americano': 48, 'cortado': 41} sort_orders = sorted (orders.items (), key = lambda x: x [1], reverse = True) para i en sort_orders: print (i [0], i [1]) 

Nuestro código devuelve lo siguiente:


espresso 72

latte 56

cappuccino 54

americano 48

cortado 41

Hay muchas cosas en nuestro código , así que vamos a desglosarlo. & nbsp;

Al comienzo de nuestro código, definimos un diccionario llamado orders que almacena los nombres de los cafés como claves y el número vendido como valores .

"Career Karma entró en mi vida cuando más lo necesitaba y rápidamente me ayudó a combinar con un bootcamp. ¡Dos meses después de graduarme, encontré el trabajo de mis sueños que se alineaba con mis valores y metas en la vida! "

Venus, ingeniero de software en Rockbot

Luego, usamos el método sorted () para ordenar el diccionario orders por valor. Aquí hay un desglose de cómo usamos el sorted () método:

Parámetro Texto Descripción
objeto orders.items () & nbsp; Se refiere a todos los valores en nuestro diccionario de & ldquo; pedidos & rdquo;. Si usáramos solo & ldquo; pedidos & rdquo ;, tendríamos que hacer referencia a la posición del índice de el elemento para obtener su valor individual. Mientras que si usamos orders.items (), se crea una lista iterable con los elementos en una lista.
key key = lambda x: x [1] Un mecanismo de clasificación que nos permite ordena nuestro diccionario por valor. Este es un ejemplo de una función Lambda, que es una función sin nombre.
reverse reverse = True Indica que queremos que nuestros datos se clasifiquen en orden descendente.

Finalmente, creamos un for bucle que recorre cada elemento creado en nuestro método sort_order e imprime tanto su nombre de clave como su valor, ordenados en el orden que especificamos en el sort_order función.

Ejemplo 2: Orden ascendente

De manera similar, si quisiéramos averiguar la bebida menos popular que se vende en nuestra cafetería, podríamos usar el mismo código que el anterior pero sin el parámetro reverse = True . Aquí hay un ejemplo del código para esto:

 orders = {'cappuccino': 54 , 'latte': 56,' espresso': 72, 'americano': 48,' cortado': 41} sort_orders = sorted (orders.items (), key = lambda x: x [1]) para i en sort_orders: print (i [0], i [1]) 

Cuando ejecutamos nuestro código, se devuelven los siguientes valores:

cortado 41

americano 48

cappuccino 54

latte 56

espresso 72

Como puede ver, nuestro código devolvió una lista de elementos organizados en orden ascendente, según el número de cada artículo pedido en el último mes.





Comprensión de listas

Además, podemos usar la comprensión de listas para ordenar el contenido del diccionario por valor. La comprensión de listas es una técnica concisa para crear listas en Python y puede ahorrar espacio si están creando métodos de clasificación más complejos.

Aquí está el código que usaríamos para clasificar nuestros pedidos de café en orden ascendente por el número de cada café que se ordenó usando la comprensión de lista:

 orders = {'cappuccino': 54,' latte': 56, 'espresso': 72,' americano ': 48,' cortado': 41} [print (key, value) for (key, value) in sorted (orders.items (), key = lambda x: x [1]) 

Cuando ejecutamos nuestro código, se devuelve la siguiente respuesta:

cortado 41

americano 48

capuchino 54

latte 56

espresso 72

El resultado de nuestro código fue el mismo que en nuestro ejemplo anterior donde ordenamos el contenido de la lista orders en orden ascendente. Pero en lugar de definir una variable sort_orders y crear un bucle for separado para recorrer la lista ordenada, creamos una lista usando la técnica de comprensión de listas.

La lista de comprensión que creamos arriba clasifica cada elemento de nuestra lista en orden ascendente, luego imprime la clave y el valor de cada elemento del diccionario en la consola.




Conclusión

Cuando trabaja con diccionarios en Python, ordenar un diccionario por valor es una operación común. El método sorted () le permite ordenar un conjunto de datos en función de sus necesidades.

Este tutorial explica, con ejemplos, cómo utilizar el sorted () para ordenar un diccionario por valor en Python, incluido cómo usar los parámetros clave y reverse . & nbsp;

¡Ahora está listo para comenzar a ordenar diccionarios por valor como un profesional de Python!





diccionario de ordenación de Python: StackOverflow Questions

Tutorials