2017-07-15 14 views
0

私は、キーと値のペアに格納辞書持っている:私は、キー「1」とリストと辞書を持ってできるようにしたい同じキー

s={"one":["two","three","four"],"two":["five","six"],"three":["ten","nine"]} 

["test","succesfull"] 

ように最終結果は次のようになります。

s={"one":["two","three","four"],"two":["five","six"],"three":["ten","nine"],"one":["test","succesfull"]} 

iは異なる値とSTILと同じキーのうちの2つを有することができるようにする必要L・ホープ

s={"one":{"data": ["two","three","four"], "test": "successfull"},"two":["five","six"],"three":["ten","nine"]} 

、私のアプローチは、1つの以上のレベルを追加することです独立

+2

[Pythonで重複キーで辞書を作る]の可能複製(https://stackoverflow.com/questions/10664856/make-dictionary-with-duplicate-keys-in-python) – Software2

+0

はなぜだと思いますあなたにはこれが必要です? – user2357112

答えて

1

それらのいずれかにアクセスすることができ、Pythonの辞書のキーのプロパティの条件に対する

0

一つを満たしてユニークです。 ..

したがって、Pythonの辞書キーは一意である必要がありますが、実行時に重複を定義することはできます...ディクテーションが保存されると、重複が自動的に削除されるか更新されます。あなたは、このように作成することができ、実行時に

mydict = {"a":1, "b":2, "c":3, "a":3} 

しかし、あなたが印刷する場合、それはする必要があり、ここで

mydict = {"a" :3, "b":2, "c":3} 

最近の値で

0

を上書きします、私は最高だと思いますこれを行うには、リストのリスト(キーが必要な場合はリストの辞書)を辞書の値として使用し、同じキーの下に複数のエントリを格納する場合は、リストのリストを次に示します。

# setup 
class dd_list(dict): 
    def __missing__(self,k): 
     r = self[k] = [] 
     return r 
d = dd_list() 

d['one'].append(["two","three","four"]) 
d['two'].append(["five","six"]) 
d['three'].append(["ten","nine"]) 

#adding 'one' key again 
d['one'].append(["test","successful"]) 

print (d) 
#{'three': [['ten', 'nine']], 'two': [['five', 'six']], 
#'one': [['two', 'three', 'four'], ['test', 'successful']]}