我想只搜索字典中的值。我在我的JSONfile
中得到了这个结构{
"Teilnehmer0": {
"Anzahl Begleitpersonen": "test",
"Betreuer": "test",
"Keyword": "test",
"Nachname": "test",
"Name": "test",
"Studiengang": ""
},
"Teilnehmer1": {
"Anzahl Begleitpersonen": "test1",
"Betreuer": "test1",
"Keyword": "test1",
"Nachname": "test1",
"Name": "test1",
"Studiengang": "test1"
},
"Teilnehmer2": {
"Anzahl Begleitpersonen": "test2",
"Betreuer": "test2",
"Keyword": "test2",
"Nachname": "test2",
"Name": "test2",
"Studiengang": "test2"
}
}
那么,我现在如何同时搜索值“名称”,“Nachname”和“关键字”,当我在键中找到3个值时,删除孔键,例如,我搜索键“Teilnehmer2”中的值,我找到3个值,比我想从我的JSON文件中删除孔键Teilnehmer2?我不知道,怎么做:/
答案 0 :(得分:0)
这样的事情怎么样:
d = {
"Teilnehmer0": {
"Anzahl Begleitpersonen": "test",
"Betreuer": "test",
"Keyword": "test",
"Nachname": "test",
"Name": "test",
"Studiengang": ""
},
"Teilnehmer1": {
"Anzahl Begleitpersonen": "test1",
"Betreuer": "test1",
"Keyword": "test1",
"Nachname": "test1",
"Name": "test1",
"Studiengang": "test1"
},
"Teilnehmer2": {
"Anzahl Begleitpersonen": "test2",
"Betreuer": "test2",
"Keyword": "test2",
"Nachname": "test2",
"Name": "test2",
"Studiengang": "test2"
}
}
for key, value in d.items():
name = value.get('Name')
nachname = value.get('Nachname')
keyword = value.get('Keyword')
# do whatever you want with name, nachname and keyword
del d[key]
在for
语句中,我们使用items()
对字典中的键/值对进行迭代,对于每个值,我们得到" Name",& #34; Nachname"和"关键字"在使用del
statement删除dict中的密钥之前。
这是你想要做的吗?
答案 1 :(得分:0)
如果要删除包含键"Name", "Nachname","Keyword"
for k,v in d.items():
if all(x in v for x in ["Name", "Nachname","Keyword"]):
del d[k]