1

私はPython(およびプログラミング全般)は初めてですが、キーがタプルの辞書があり、リストと同じキーを持つ新しい辞書を作成したいと考えています。

これが私が意味することです:

私は持っている:

d = {("apple", "banana", "pear", "pineapple"):24, 
("banana", "pineapple", "apple", "pear"):17,
("pineapple", "pear", "banana", "apple"):10,
("apple", "pineapple", "banana", "pear"):16} 

私が欲しい:

new_d = {["apple", "banana", "pear", "pineapple"]:24, 
["banana", "pineapple", "apple", "pear"]:17, 
["pineapple", "pear", "banana", "apple"]:10, 
["apple", "pineapple", "banana", "pear"]:16}

for ループと if ステートメントを使用してこれを行う簡単な方法はありますか?

4

2 に答える 2

7

リストはハッシュ可能ではないため、辞書のキーにすることはできません。

キーをリストにしたいのはなぜですか?現在関数を呼び出している場合

expect_iterable_of_lists(d.keys())

map、とを単純に組み合わせることができますlist

expect_iterable_of_lists(map(list, d.keys()))
于 2012-12-02T19:02:21.293 に答える