Tuesday 15 February 2011

python - Create subdictionary from dictionary if values in dictionary are also in a list -


मेरे पास एक शब्दकोश है:

  keys = [1., 2., 3 , 4., 5.] मूल्य = [0.8, 0.8, 0.6, 0.0, .25] डिक = dict (ज़िप (चाबियाँ, मान))   

और एक subdictionary बनाने के लिए चाहेंगे कि केवल पहली शब्दकोश से चाबियाँ और मूल्य शामिल हैं यदि पहले डिक्शनरी के मान सूची में हैं।

  सूची = [1., 0.8, 0.8, 0.4, 0.0]   

मैं उप-शब्द होना चाहता हूं:

  subdic = {1.xx.8, 2.:8, 4. सेना.0}   

मैं किसी भी मदद की सराहना करता हूँ! धन्यवाद!

एक डिक्ट-कंपेरियन का प्रयोग करें:

  & gt; & gt; ; & gt; Dic = dict (ज़िप (चाबियाँ, मान)) & gt; & gt; & gt; Lis = [1., 0.8, 0.8, 0.4, 0.0]> gt; & gt; & gt; {K: v for k, v in dic.items () अगर l में लिन या v में lis} {1.0: 0.8, 2.0: 0.8, 4.0: 0.0}   

Python 2.6 के लिए या पहले संस्करण उपयोग जनक अभिव्यक्ति के साथ उपयोग करें:

 > gt; & gt; डीसी (वी) में के लिए, (डी, आईसी), डीसी.आईटेम्स () में, (यदि कश्मीर में एल या एल में वी) (1.0: 0.8, 2.0: 0.8, 4.0: 0.0}   

पायथन 2 में आप dict.iteritems () का इस्तेमाल कर सकते हैं क्योंकि यह एक इटरेटर देता है। dict.items () दोनों संस्करणों पर काम करेगा।

No comments:

Post a Comment