0
Score      SynsetTerms
 1          soft#18 mild#3 balmy#2
 1          love#2 enjoy#3
0.625       love#1

从上面的输入,我怎样才能实现如下输出?我希望通过删除重复的单词并将每个单词分成一个新行来创建一个包含单词及其分数的文件。将选择得分较高的重复单词。

Score      SynsetTerms
 1          soft
 1          mild
 1          balmy
 1          enjoy
 1          love 

请注意,得分为 0.625 的单词“love”已被删除,仅保留得分为 1 的“love”,因为它的得分较高。

4

1 回答 1

0
import re
lst = []
dict = {}
i = 1
fhand = open('C:/Users/10648879/Documents/python_prog/data/test.csv', 'r')
for line in fhand:
    if i == 1:
    i = i + 1
continue
line = re.sub('#[0-9]*', '', line).strip()
line = re.split('\s+', line)
for counter in range(len(line)):
    if counter == 0:
    score = line[counter]
continue
if line[counter] in dict:
    if score > dict[line[counter]]:
    dict[line[counter]] = score
else :
    dict[line[counter]] = score
i = i + 1
print 'score' + ' ' + 'SynsetTerms'
for k, v in dict.items():
    print v, k
于 2018-09-03T08:32:50.227 回答