如何从给定的txt文件制作字典?

问题描述

任务:给一个txt文件,在一行中带有形容词\ t同义词,同义词,同义词等。。我需要创建一个字典,其中形容词是键,同义词是值。我的代码

fn round(data: &mut Data) {
    let V_lastIdx = data.V.len() - 1;
    let V_last = data.V[V_lastIdx].clone();
                               // ^^^^^^^^
    return V_last.main(data);
}

输出显示了方括号...有人可以解决吗?

解决方法

使用split()而不是正则表达式来使用定界符分割字符串。首先使用\t对其进行拆分,以将形容词与同义词分开,然后使用,将同义词拆分为列表。

然后,您需要在字典中添加新密钥,而不是替换整个字典。

for line in infile:
    line = line.strip() # remove newline
    adjective,synonyms = line.split("\t")
    synonyms = synonyms.split(",")
    dictionary[adjective] = synonyms

print(dictionary)