2011-01-18 18 views
0

私はイニシャル辞書リストを持っているPythonの:辞書とリストの操作ヘルプ〜

list_dic = [{'number': 1}, {'number': 2}] 

私も他のオブジェクトのリストを持って、ここでは、私は結果が欲しい

another_list = [2,3,4] 

を表すためにint型を使用します

list_dic = [{'number': 1, 2: None, 3: None, 4: None}, \ 
{'number': 2, 2: None, 3: None, 4: None}] 

非常にありがとうございます。

+0

リストをキーとして使用して既定の辞書を作成し、古いものを更新します。 – user469652

+0

素晴らしい!あなたがやったことのためのコードを示してください、そして、私はあなたがそれを改善するために喜んで誰かが喜んでいると確信しています。 –

+0

申し訳ありませんが、次回はコードを投稿して最適化を求めます。 – user469652

答えて

0

をデフォルトの辞書を作成するためのキーとしてリストを使用し、古いものを更新してください。ループのためのあなたが言ったことに正確に対応する方法を

list_dic = [{'number': 1}, {'number': 2}] 
another_list = [2,3,4] 

for x in list_dic: 
    x.update(dict.fromkeys(another_list)) 

print list_dic 

注意。私はちょうど使用する正しい名前を知らなかったと思う。その場合は通常docsが役に立ちます。

+0

これは私のやり方ですが、それを改善するために[expression for in]構文を使用するより良い方法が必要になるでしょう。 – user469652

+0

@ user469652:リストの理解度は、この問題のためにもっとPython以上になると思いますか? –

1

あなたがいることが、ここであなたが行きたいと思う理由を想像することはできません:あなたはそれを自分で答え

for dic in list_dic: 
    dic.update(dict.fromkeys(another_list)) 
+0

主なアイデアは、Pythonにはまだまだ新しくなって以来、Pythonのコードをもっと学ぶことです。 – user469652

+0

これはPythonicと同じだと思います。 'dict.update()'は更新された辞書を返さないので、リストの理解を使うことはできません。 –

0
[dic for dic in list_dic if dic.update(dict.fromkeys(another_list)) or True]