Friday 15 February 2013

Howto transform python list of dictionary to new list of dictonary? -


मेरे पास शब्दकोशों की निम्न सूची है:

  list1 = [{'n1': ('ई 1', 'ई 2', 'ई 3')}, {'एन 2': ('ई 1', 'ई 2')}, {'एन 3': ('ई 2', 'ई 3', 'ई 4')} ]   

और मुझे इसमें परिवर्तन करने की आवश्यकता है:

  list2 = [{'e1': ('n1', 'n2')}, { 'ई 2': ('एन 1', 'एन 2', 'एन 3')}, {'ई 3': ('एन 3',)}, {'ई 4': ('एन 3',)}}  / Pre> 

क्या ऐसा करने के लिए कोई छोटा और स्मार्ट तरीका है?

ऐसा कुछ:

  & gt; & gt; & gt; आईटीरटोल्स आयात श्रृंखला से & gt; & gt; & gt; संग्रह से आयात डिफ़ॉल्ट दिखेगा & gt; & gt; & gt; Vals = सेट (chain.from_iterable (एक्स के लिए x के लिए y के लिए list1 x.values ​​() में)) & gt; & gt; & gt; Dic = defaultdict (सूची) & gt; & gt; & gt; Vals में एक्स के लिए: ... y के लिए list1: ... के लिए, v में y.items (): ... अगर x में v: ... dic [x] .append (k) ... & gt; & gt; & gt; ('एन 1', 'एन 2'], 'ई 3': ['एन 1', 'एन 3'] ['एन 1', 'ए 4': ['एन 3'], 'ई 1': ['एन 1', 'एन 2'], 'ई 3' , 'ई 2': ['एन 1', 'एन 2', 'एन 3']})    

No comments:

Post a Comment