別辞書に辞書値を変換するための単一のライナー

NNA:

私は、その値も辞書です辞書dict1を持っています

dict1 = 
  {
   0: {'test1': ['pass', 'pass']},
   1: {'test2': ['fail', 'pass']},
   2: {'test3': ['fail', 'fail']},
   3: {'test4': []},
   4: {'test5': ['pass']},
   5: {'test6': ['pass', 'pass']}
  }

私はこのように試してみましたが、別の辞書dict2としてその値を取得したいです

dict2 = {k:v for k,v in dict(dict1.values()).items()}

私は以下のエラーを取得しています

ValueError: dictionary update sequence element #0 has length 1; 2 is required

予想される出力

dict2 =
      {
      'test1': ['pass', 'pass'],
      'test2': ['fail', 'pass'],
      'test3': ['fail', 'fail'],
      'test4': [],
      'test5': ['pass'],
      'test6': ['pass', 'pass']
      }

すべてのヘルプは高く評価され

Ajax1234:

あなたは使用することができますdict

dict2 = dict(b for i in dict1.values() for b in i.items())

出力:

{'test1': ['pass', 'pass'], 
 'test2': ['fail', 'pass'], 
 'test3': ['fail', 'fail'], 
 'test4': [], 
 'test5': ['pass'], 
 'test6': ['pass', 'pass']
}

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=364705&siteId=1