我有一个由以下方法生成的字典列表:
r=requests.get(url, headers={key:password})
import_data_list.append(r.json())
我想从这些字典中删除第一个键。我知道我可以删除列表中的字典:
del import_data_list[0]
但是如何从列表中的字典中删除一个键,而不是删除整个字典。
我尝试过类似的方法:
del import_data_list[0["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(但不适用于版本 <= 3.5,因为字典没有排序)
关于python - 从字典列表中的字典中删除键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57474376/