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]保持为真,而不创建新的字典列表?