我是 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 语句的简单方法来做到这一点?
列表不可散列,因此不能作为字典中的键。
为什么你希望你的键是列表?如果您当前正在调用一个函数
expect_iterable_of_lists(d.keys())
,你可以简单地组合map
和list
:
expect_iterable_of_lists(map(list, d.keys()))
我是一名优秀的程序员,十分优秀!