如何根据其他字典中的奇偶值创建字典?

By simon at 2019-05-19 • 0人收藏 • 14人看过

我有以下的字典:

{'key1': [ value1] ,'key2': [ value2] ,'key3': [ value3] ,'key4': [ value4]}

我想做的是使用这些值来创建一个新的字典。 奇数元素的值将是新键,下一个元素的值将是该键的新值。 我的意思是:

{'value1': [ value2] ,'value3': [ value4]}

我该怎么做? 我想澄清一下,这是一个小例子,因为字典有数百个元素,所以这个解决方案对于任意数量的元素都是可伸缩的。

2 个回复 | 最后更新于 2019-05-19
2019-05-19   #1

假设1)不会发生 KeyError,也就是说没有相同值的奇数索引字典值,2)你的字典中有偶数条目,我会这样做:

我的迪克特。 值() new dict {} for i in range (0,len (vals) ,2) : new dict [ vals [ i ]][ i + 1]

但是,正如其他人指出的那样,字典实际上没有顺序,所以这是一个"让我们说"的解决方案。

2019-05-19   #2

以下步骤:

  1. 从 DictObj 中提取键数组
  2. 列出它们的类别,偶数和奇数索引数组
  3. 用这两个数组创建一个字典。

    迪克托布基:'key1','key2':'value2','key3':'value3','key4':'value4'} ; print (迪克托布基() ; evendictobj.keys ()[1:2] ; oddArray dictObj.keys ()[2] ; dicjdictobnew (zip (oddArray)) print (迪克托布基:

登录后方可回帖

Loading...