Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Impressão de variáveis (dicionários)

Por que ao imprimir uma lista com {} (tipo um dicionário), ele muda a ordem que é apresentada?

1 resposta
solução!

Alice,

Todos os tipos de dados compostos que estudamos em detalhes até agora — strings, listas e tuplas — são coleções sequenciais. Isto significa que os itens na coleção estão ordenados da esquerda para a direita e eles usam números inteiros como índices para acessar os valores que eles contêm.

Dicionário é um tipo diferente de coleção. Ele é um tipo de mapeamento nativo do Python. Um mapa é uma coleção associativa desordenada. A associação, ou mapeamento, é feita a partir de uma chave, que pode ser qualquer tipo imutável, para um valor, que pode ser qualquer objeto de dados do Python.

dic = {'759147': 54, '186398060': 8, '199846203': 42, '191725321': 10, '158947719': 4}
for item in sorted(dic, key = dic.get):
    print (dic[item])

Só um detalhe, o termo mais correto seria classificar o dicionário. Um dicionário em python não tem ordem, na maior parte dos casos não tem sentido manter a ordem dos itens do dicionário.

Porém existe o OrderedDict (também em python 2).

Alternativamente você pode ordenar uma lista com as chaves e acessar os valores na ordem dessa lista.