Pular para o conteúdo

Como usar corretamente o dicionário em Python classificado por valor?

[

Ordenando um Dicionário Python: Valores, Chaves e Mais

por Ian Currie

Você tem um dicionário, mas gostaria de ordenar os pares chave-valor. Talvez você já tenha tentado passar um dicionário para a função sorted(), mas não obteve os resultados esperados. Neste tutorial, você aprenderá tudo o que precisa saber para ordenar dicionários em Python.

Neste tutorial, você aprenderá:

  • Como usar a função sorted()
  • Como obter visões de dicionários para iterar
  • Como os dicionários são convertidos em listas durante a ordenação
  • Como especificar uma chave de ordenação para ordenar um dicionário por valor, chave ou atributo aninhado
  • Como usar compreensões de dicionário e o construtor dict() para reconstruir seus dicionários
  • Como considerar estruturas de dados alternativas para seus dados chave-valor

Ao longo do caminho, você também usará o módulo timeit para medir o tempo de execução do código e obter resultados tangíveis para comparar os diferentes métodos de ordenação de dados chave-valor. Você também considerará se um dicionário ordenado é realmente a melhor opção, pois não é um padrão muito comum.

Para aproveitar ao máximo este tutorial, você deve conhecer dicionários, listas, tuplas e funções. Com esse conhecimento, você poderá ordenar dicionários ao final deste tutorial. Alguma experiência com funções de ordem superior, como funções lambda, também será útil, mas não é um requisito.

Download gratuito: [Clique aqui para baixar o usará para ordenar pares chave-valor neste tutorial.

Primeiro, você aprenderá alguns conhecimentos fundamentais antes de tentar ordenar um dicionário em Python.

Redescobrindo a Ordem dos Dicionários em Python

Se você queria manter um dicionário ordenado como uma estrutura de dados antes disso, geralmente precisava recorrer ao uso de uma lista de tuplas. No entanto, com as alterações introduzidas no Python 3.6, você pode confiar na ordem de inserção ao usar um dicionário.

Vamos começar com algumas noções básicas sobre ordenação de dicionários em Python.

Entendendo o que a Ordenação de um Dicionário Realmente Significa

Agora que você conhece a ordem de inserção garantida em dicionários a partir do Python 3.7, vamos pensar no que significa “ordenar” um dicionário.

Dicionários são estruturas de dados mapeadas em Python, o que significa que eles não têm uma ordem específica. No entanto, você pode recuperar os pares chave-valor de um dicionário na ordem em que eles foram inseridos usando iterações ou métodos específicos.

Ao falar sobre a ordenação de um dicionário, geralmente se refere ao ato de classificar seus pares chave-valor com base em algum critério. Isso pode ser a ordenação por valores, ordenação por chaves ou até mesmo a ordenação com base em um atributo aninhado nas chaves ou valores do dicionário.

Vamos começar olhando para a função sorted() e como usá-la para classificar pares chave-valor em um dicionário.