SORU
5 Mart 2009, PERŞEMBE


Sıralama Python sözlük değeri

Bir veritabanında değerleri iki alanı okunan bir sözlük var: bir dize alanı ve bir Sayı alanı. Dize alanı benzersizdir, bu sözlük anahtarıdır.

Tuşlara yok edebilirim, ama ne tür değerlere dayalı olabilir miyim?

Not: ben okuma Yığın Taşması soru How do I sort a list of dictionaries by values of the dictionary in Python? ve muhtemelen değişebilir benim kod listesini sözlük, ama beri ben gerçekten ihtiyaç listesi sözlükleri ben de bunu bilmek istiyordum eğer daha basit bir çözüm.

CEVAP
5 Mart 2009, PERŞEMBE


Olası bir dict sıralamak için, sadece sıralanmış bir dict bir temsili değildir. Dicts doğal olarak orderless, ama diğer türleri, listeler ve diziler gibi değil. Liste—muhtemelen dizilerini bir liste olacak sıralanmış bir temsili.

Örneğin,

import operator
x = {1: 2, 3: 4, 4: 3, 2: 1, 0: 0}
sorted_x = sorted(x.items(), key=operator.itemgetter(1))

sorted_x dizilerini her başlığın ikinci unsuru göre sıralanmış bir liste olacak. dict(sorted_x) == x.

Ve bu değerler yerine anahtarları sıralama için isteyen için

import operator
x = {1: 2, 3: 4, 4: 3, 2: 1, 0: 0}
sorted_x = sorted(x.items(), key=operator.itemgetter(0))

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • kimaliz

    kimaliz

    18 Temmuz 2006
  • optionalinfo

    optionalinfo

    29 EKİM 2005
  • Top10Series

    Top10Series

    26 Kasım 2008