Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 删除字典中每个键的第一项_Python_Dictionary - Fatal编程技术网

Python 删除字典中每个键的第一项

Python 删除字典中每个键的第一项,python,dictionary,Python,Dictionary,我在这里有点为难,希望能得到一些帮助 所以我有一本这样的字典 {'a':[1, 2, 3], 'b':[4, 5, 6]} 我需要创建一个函数,该函数将自动删除每个列表/键中的第一项,因此它应该是 {'a':[2, 3], 'b':[5, 6]} 我知道我应该使用pop函数,但是当有超过2个键和3个值时,就会有点混乱,你可以循环字典中的值,一次只弹出一个。如果需要进一步的功能或控件,可以将其放置在函数中 dict_ = {'a':[1, 2, 3], 'b':[4, 5, 6]} for

我在这里有点为难,希望能得到一些帮助

所以我有一本这样的字典

{'a':[1, 2, 3], 'b':[4, 5, 6]}
我需要创建一个函数,该函数将自动删除每个列表/键中的第一项,因此它应该是

{'a':[2, 3], 'b':[5, 6]}

我知道我应该使用pop函数,但是当有超过2个键和3个值时,就会有点混乱,你可以循环字典中的值,一次只弹出一个。如果需要进一步的功能或控件,可以将其放置在函数中

dict_ = {'a':[1, 2, 3], 'b':[4, 5, 6]}

for val in dict_.values()
    val.pop(0)

您可以遍历dict并拼接列表

var1 = {'a':[1, 2, 3], 'b':[4, 5, 6]}

for element in var1:
    var1[element] = var1[element][1:]

您可以使用字典理解:

>>> a = {'a':[1, 2, 3], 'b':[4, 5, 6]}
>>> {k: a[k][1:] for k in a}
{'a': [2, 3], 'b': [5, 6]}

您可以使用map内置函数和lambda函数结合使用一个线性函数来实现这一点。这种方法的另一个优点是没有像切片解决方案那样涉及复制:

doc = {'a':[1, 2, 3], 'b':[4, 5, 6]}
map(lambda v: v.pop(0), doc.values())

这将在dict的每个值上应用list.pop0。

这里是另一个解决方案

    dict1={'a':[1, 2, 3], 'b':[4, 5, 6]}

    for item in dict1.values():
        item.remove(item[0])
for循环遍历字典中由“dict1.values”表示的值。值是一组列表,列表的“.remove”函数将删除给定元素的第一个匹配项,因此,如果您将列表中找到的第一个元素赋予它,它也将删除它


希望这是有用的

在我尝试一些不起作用的东西之前。但我只是想这样做,但我不确定它是否会起作用,因为我只是想到了,还没有尝试过。def delRowself:for key in self.\u table:self.\u table[key]。pop哦,对不起,我不太确定这里的格式是如何工作的,我怎样才能让它看起来更好?你不应该问你自己没有试过也没有测试过的问题。如果你只花5分钟思考并做一些研究,你就可以自己找到答案。d={k:d[k][1:]对于k in d}假设d是一个dict对象哈,对不起,我现在所做的只是工作。我只是需要换一种方式,当我输入问题时,我得到了这个想法。