我有一个列表字典说:
dic = {"foo" : [1,3,5,6] , "bar" : [5, 3, 8, 4]}
我正在尝试在不破坏原始列表的情况下创建这些列表的反向字典
我什至尝试过类似的事情
list1 = dic["foo"]
list2 = list1.reverse()
newDic = {}
newDic["foo"] = list2
但似乎dic["A"]
、list1
和list2
都指向同一个内存位置。
也就是说,dic["foo"]
也在这个过程中被反转了,这不是我想要的!!!
有什么简单的方法可以解决这个问题吗?
最佳答案
如果你想做整本字典试试这个衬垫:
newDic = {key:value[::-1] for key,value in dic.iteritems()}
如果你只想做一个列表试试这个:
list1 = dic["foo"]
newDic = {}
newDic["foo"] = list1[::-1]
list.reverse()
将改变列表本身。试试 list[::-1]
,它会返回一个反向列表的新副本
关于Python:如何在不反转原始字典的情况下反转新字典中的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26582136/