SORU
18 Mart 2011, Cuma


python sözlük-değeri anahtar çiftleri alt ayıklamak için en iyi yolu nesne

Birkaç anahtar değer çiftleri olan büyük bir sözlük nesnesi (16), sadece 3 tanesi ile ilgileniyorum. Ne en iyi yolu (en kısa/verimli/şık) bunu başarmak için?

Biliyorum en iyisidir:

bigdict = {'a':1,'b':2,....,'z':26} 
subdict = {'l':bigdict['l'], 'm':bigdict['m'], 'n':bigdict['n']}

Bu daha zarif bir yolu yoktur eminim. Fikirler?

CEVAP
18 Mart 2011, Cuma


Deneyebilirsiniz:

dict((k, bigdict[k]) for k in ('l', 'm', 'n'))

... ya da içindePython 3Python sürümleri veya sonraki 2.7(10 ** o 2.7 çalıştığını söylediğin için de teşekkürler):

{k: bigdict[k] for k in ('l', 'm', 'n')}

Håvard S eğer bu varsayım yapmak mümkün değil. tuşlar sözlükte - his answer bakın olacak biliyorsun herhalde belirttiği Gibi güncelleme: Eğer None göster bigdict kayıp bir anahtar isterseniz timbo yorum işaret ettiği gibi, alternatif olarak, yapabilirsiniz:

{k: bigdict.get(k, None) for k in ('l', 'm', 'n')}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • CNNMoney

    CNNMoney

    16 Kasım 2006
  • Maschine Tutorials

    Maschine Tut

    15 ŞUBAT 2011
  • NightShader1

    NightShader1

    25 Temmuz 2006