0

我有一个包含 3 列的文件:

ArabicWord POS EnglishTranslation 

这是阿拉伯语单词,它的邮政标签和该阿拉伯语单词的英文翻译。所以一个阿拉伯语单词可能会根据不同的词性标签有不同的翻译。现在我想将此文件存储在 Python 中的哈希中。但我的问题是每列的实体可能不止一次出现(没有一个是唯一的)。存储此文件的一种方法是连接第一列和第二列以创建一个唯一实体(特定标签的每个阿拉伯语单词只允许有一个翻译),但由于我需要散列来进一步处理,这种方式会减慢进程. 还有其他方法吗?

更新: 第一种方法适用于存储文件。但我现在的问题是如何使用这些元组。我可以通过简单的 dict[0], dict[1] 访问阿拉伯语单词及其 pos 标签,但我怎样才能访问英文翻译?

4

2 回答 2

2

根据您对问题的评论,我会使用字典词典:

定义数据结构:

>>> words = { 'ArabicWord' : { 'POS1' : 'EnglishTranslation1' } }
>>> words['ArabicWord']['POS2'] = 'EnglishTranslation2'
>>> words
{'ArabicWord': {'POS2': 'EnglishTranslation2', 'POS1': 'EnglishTranslation1'}}

查找特定阿拉伯语单词的所有 POS 标签:

>>> words['ArabicWord'].keys()
['POS2', 'POS1']

查找特定 ArabicWord/POS 标签组合的英文翻译:

>>> words['ArabicWord']['POS1']
'EnglishTranslation1'
于 2013-03-25T12:41:50.180 回答
0

我建议使用内存中的sqlite数据库。这将允许您继续将数据作为三个不同的列处理,并且可以轻松获取所需的任何数据。

于 2013-03-25T11:59:05.827 回答