Python附加字典列表

时间:2018-07-27 18:21:54

标签: python

我有这个列表:

[('1', '1')]

,我想在列表前添加一个dict对象,像这样:

[('All', 'All'), ('1', '1')]

我正在尝试:

myList[:0] = dict({'All': 'All'})

但这给了我

['All', ('1', '1')]

我在做什么错了?

5 个答案:

答案 0 :(得分:1)

当您将dict用于迭代时,您仅迭代其键。相反,如果要遍历其键/值对,则必须使用dict.items视图。

l = [('1', '1')]
d = dict({'All': 'All'})
print([*d.items(), *l])
# [('All', 'All'), ('1', '1')]

*的语法为available in Python 3.5 and later

l[:0] = d.items()

也可以

答案 1 :(得分:1)

使用字典的items()获取键,值并将它们放在列表的前面:

lst = [('1', '1')]
lst = list({'All': 'All'}.items()) + lst

print(lst)
# [('All', 'All'), ('1', '1')]

注意{'All': 'All'}本身就是字典,因此代码中的dict({'All': 'All'})是不必要的。

答案 2 :(得分:0)

您也可以在下面查看。

//control current page
self.addEventListener('activate', function(event) {
console.log('Claiming control');
return self.clients.claim();
});

答案 3 :(得分:0)

要获得[('All', 'All'), ('1', '1')]之类的答案,请执行以下操作:

myList = [('1', '1')]
myList = [('All', 'All')] + myList

有关更多信息,请参考this

答案 4 :(得分:0)

您可以参考以下函数,将任何字典作为列表项追加到已经存在的列表中。您只需要发送一个新的字典,然后将其附加到已经存在的旧列表中即可。

    def append_dict_to_list(new_dict,old_list):
        list_to_append = list(new_dict.items())
        new_list = list_to_append + old_list 
        return new_list 

    print (append_dict_to_list({'All':'All'},[('1', '1')]))

P.S:如果要在现有列表之后添加新字典,只需将代码中的顺序更改为new_list = old_list + list_to_append