Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.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_List_Dictionary - Fatal编程技术网

Python 从字典列表中的字典中删除键

Python 从字典列表中的字典中删除键,python,list,dictionary,Python,List,Dictionary,我有一个由以下人员生成的词典列表: r=requests.get(url, headers={key:password}) import_data_list.append(r.json()) 我想从这些字典中删除第一个键。我知道我可以通过以下方式删除列表中的词典: del import_data_list[0] 但是如何从列表中的字典中删除一个键,而不是删除整个字典 我试过这样的方法: del import_data_list[0["KEY"]] 显然它不起

我有一个由以下人员生成的词典列表:

    r=requests.get(url, headers={key:password})
    import_data_list.append(r.json())
我想从这些字典中删除第一个键。我知道我可以通过以下方式删除列表中的词典:

    del import_data_list[0]
但是如何从列表中的字典中删除一个键,而不是删除整个字典

我试过这样的方法:

    del import_data_list[0["KEY"]]
显然它不起作用

如果这是一个愚蠢的问题,任何帮助都将非常感激和抱歉。还在学习

使用命令:

del dictionaryName[KEY]

如果您想从这些词典中删除第一个键(您不知道它的名称,您只知道它是第一个键),我建议您循环查看列表中的词典。您可以使用
list(d.keys())[0]
甚至
list(d)[0]
获取名为
d
的词典的第一个键
以下是一个例子:

for d in import_data_list:
    k = list(d)[0]  # get the first key
    del d[k]        # delete it from the dictionary
print(import_data_list)
你也可以使用列表理解的一行样式,我觉得这也很聪明。在本例中,还可以检索列表中第一个键的值,这可能很有用:

r = [d.pop(list(d)[0]) for d in import_data_list]
print(import_data_list)

请注意,它仅适用于python版本>=3.6(但不适用于版本,假设您有此字典列表)

myList = [
    {
        "Sub1List1" : "value",
        "Sub2List1" : "value",
        "Sub3List1" : "value",
        "Sub4List1" : "value"
    },
    {
        "Sub1List2" : "value",
        "Sub2List2" : "value",
        "Sub3List2" : "value",
        "Sub4List2" : "value"
    },
    {
        "Sub1List3" : "value",
        "Sub2List3" : "value",
        "Sub3List3" : "value",
        "Sub4List3" : "value"
    }
]
现在,如果要从第一个列表中删除键
Sub1List1
,可以使用:

del myList[0]["Sub1List1"]

注意你想要的:如果你使用的是python 3.5及以下版本,
dict
没有顺序,因此你不知道第一个是什么。你使用的是哪种python?关于
del import\u data\u list[0][“KEY”]
?为什么del d[k]保持为真,而不创建新的字典列表?