2017-05-02 6 views
2

辞書の値である空のリストに項目として追加したい辞書が4つあります。私はこれをどうやって行うのか分かりません。このへ辞書を空のリストに追加するdict.value()

data = {'Cars': []} 

dict1 = {'subaru': 1, 'honda': 5, 'volkswagen': 8} 
dict2 = {'subaru': 7, 'honda': 3, 'volkswagen': 9} 
dict3 = {'subaru': 9, 'honda': 2, 'volkswagen': 1} 
dict4 = {'subaru': 2, 'honda': 8, 'volkswagen': 2} 

print (data) 

:誰かが私がこれをオンにする方法を見つけ出す助けてもらえ

{'Cars': [{'subaru': 1, 'honda': 5, 'volkswagen': 8}, 
      {'subaru': 7, 'honda': 3, 'volkswagen': 9}, 
      {'subaru': 9, 'honda': 2, 'volkswagen': 1}, 
      {'subaru': 2, 'honda': 8, 'volkswagen': 2}]} 
+1

'data ['Cars']'は最初は空のリストです。リスト上に '.append()'を呼び出すことで要素を追加します。したがって、 'data ['Cars']。append(dict1)'などとなります。 – jasonharper

+0

一般的なリスト操作については、[ドキュメントの参照](http://stackoverflow.com/documentation/python/209/list/2035/list-methods-and-supported-operators#t=201705020650452568632)を参照してください。 – poke

答えて

1
data = {'Cars': []} 
dict1 = {'subaru': 1, 'honda': 5, 'volkswagen': 8} 
dict2 = {'subaru': 7, 'honda': 3, 'volkswagen': 9} 
dict3 = {'subaru': 9, 'honda': 2, 'volkswagen': 1} 
dict4 = {'subaru': 2, 'honda': 8, 'volkswagen': 2} 
for item in [dict1, dict2, dict3, dict4]: 
    data['Cars'].append(item) 
import pprint 
pp = pprint.PrettyPrinter() 
pp.pprint(data) 

います:

{'Cars': [{'subaru': 1, 'honda': 5, 'volkswagen': 8}, 
      {'subaru': 7, 'honda': 3, 'volkswagen': 9}, 
      {'subaru': 9, 'honda': 2, 'volkswagen': 1}, 
      {'subaru': 2, 'honda': 8, 'volkswagen': 2}]} 

引用: "" "data['Cars']は、最初は空のリストです。リストに要素を追加するには、.append()を呼び出します。したがって、その上data['Cars'].append(dict1)、および「」」 - 。jasonharper

と、これは上記のように構成されたループ内の1つのステップで行うことができます

かなり印刷あなたimportpprint moduleを取得するには、作成します。 pppp = pprint.PrettyPrinter()を使用して、オブジェクトとそれがかなり方法で辞書にネストされたリストを印刷するpp.pprint()関数の使用:)

ところで:あなたは既にリストにdata辞書を作成することができます使用して1つのステップの要素を含む:

data = {'Cars': [ 
    {'subaru': 1, 'honda': 5, 'volkswagen': 8}, 
    {'subaru': 7, 'honda': 3, 'volkswagen': 9}, 
    {'subaru': 9, 'honda': 2, 'volkswagen': 1}, 
    {'subaru': 2, 'honda': 8, 'volkswagen': 2}]} 
+0

リスト内包表記をループ文の置換として使用しないでください。それは悪いスタイルであり、不必要なリストを作成します。 – poke

+0

私はPrettyPrinterについて知りませんでした。提案していただきありがとうございます!私は非常にコーディングし、これのようなものを学ぶことは楽しみに追加されています:) – virgiliocyte

+0

今...あなたのすべての質問は、ここでstackoverflowでお答えしています... :) – Claudio

0

をあなたはそれに追加し、その後、data辞書にCarsキーにアクセスする必要があります。

data = {'Cars': []} 

dict1 = {'subaru': 1, 'honda': 5, 'volkswagen': 8} 
dict2 = {'subaru': 7, 'honda': 3, 'volkswagen': 9} 
dict3 = {'subaru': 9, 'honda': 2, 'volkswagen': 1} 
dict4 = {'subaru': 2, 'honda': 8, 'volkswagen': 2} 

data['Cars'].append(dict1) 
data['Cars'].append(dict2) 
data['Cars'].append(dict3) 
data['Cars'].append(dict4) 

あなただけのリストである、あなたのdata["Cars"]にすべてdictsを追加するだけで

data['Cars'].append({'subaru': 1, 'honda': 5, 'volkswagen': 8}) 
data['Cars'].append({'subaru': 7, 'honda': 3, 'volkswagen': 9}) 
data['Cars'].append({'subaru': 9, 'honda': 2, 'volkswagen': 1}) 
data['Cars'].append({'subaru': 2, 'honda': 8, 'volkswagen': 2}) 
0

にこれを簡素化することができます。

for i in [dict1, dict2, dict3, dict4]: 
    data["Cars"].append(i) 

print data 
関連する問題