我的问题有点牵强,但我会尽可能清楚地表达出来
我有两个包含不同字典的python文件
在文件science.py
中,字典的结果如下:
dict1 = { "microbiome": {
"lang": "en",
"lemmatizer": "microbiome",
"Wikidata": "http://www.wikidata.org/entity/Q1330402"
"DBpedia": "http://dbpedia.org/resource/Microbiota"
}, "teaching innovation": {
"lang": "en",
"lemmatizer": "innovación docente",
"Wikidata": null,
"DBpedia": null
},
......
}
本词典结构的内容构建在我调用的函数process (word)
中
compact.py
文件的输出如下:
dict2 = { http://dbpedia.org/resource/Microbiota :[
{'keyword': 'Microbiota', 'language': 'ca'},
{'keyword': 'Microbiota', 'language': 'en'},
{'keyword': 'Microbioma', 'language': 'es'}],
'teaching innovation': [{'keyword': 'Semantics',
'language': 'en'},
{'keyword': 'Semàntica', 'language': 'ca'},
{'keyword': 'Semántica lingüística',
'language': 'es'}],
.... }
该词典结构的内容是通过一个名为query_kw (uri)
的函数构建的,在该函数中,对DBpedia页面进行查询,以从uri获取单词的翻译。这将以字典的形式返回一个包含单词不同翻译的列表
如dict2
所示,它包含单词及其所在语言的翻译。我试图做的是检查来自dict1
的单词是否在 dict2
中找到。
在我上面的小例子中,你可以看到。如果我们看一下dict1
一个字典键是“microbiome”,那么我必须检查它是否在 dict2
的字典列表中。如果未按原样找到,则以与其他({'keyword': microbiome, 'language': 'en'}
)相同的方式将其添加到dict2
列表中
那么结果必须是:
dict2 = { http://dbpedia.org/resource/Microbiota :[
{'keyword': 'Microbiota', 'language': 'ca'},
{'keyword': 'Microbiota', 'language': 'en'},
{'keyword': 'Microbioma', 'language': 'es'},
{'keyword': 'microbiome', 'language': 'en'}],
'teaching innovation': [{'keyword': 'Semantics',
'language': 'en'},
{'keyword': 'Semàntica', 'language': 'ca'},
{'keyword': 'Semántica lingüística',
'language': 'es'}],
{'keyword': 'teaching innovation',
'language': 'en'}],
.... }
我尝试了以下几点(我知道这不是最好的,但我只是有一个想法我该怎么做):
wrapper = query_kw(uri)
res_keys = process(palabra)
for k in rest_keys.keys():
wrap = {'keyword': rest_keys[k], 'language': rest_keys[k]['language']
for ind in wrapper:
for key, value in wrapper[ind]:
for ky, v in wrap:
if key is not ky and value is not v:
wrapper.append(wrap)
我已经说过,它既不美观,也不是最优的,最重要的是它不能正常工作,但我想不出如何做到这一点。我希望我已经解释清楚了
好的,我已经编写了这个简短的脚本,您可以运行完整的代码来验证它是否适用于您的问题中的示例
基本上,我使用dict理解,并使用
DBpedia
作为关联这两个词典的键如果您有问题(如果这是您的意图),请告诉我
相关问题 更多 >
编程相关推荐