我是新手。对不起这个愚蠢的问题。
我正在尝试计算单词,例如" Positive"," Negative"和" Neutral"在许多.txt文件中(3979个文件)。在算上之后,我想选一个计数最高的那个。
让我们在给定的文字中说,有5个正面,1个负面和0个中立。
我把它放在诸如
之类的列表中myRev = [Positive, Negative, Neutral]
然后如果我使用
largest = max(myRev)
当我致电largest
时,它会给出
5
在这种情况下,我希望显示的值为Positive
,Negative
或Neutral
(>>>这是我的主要问题)
之后我想将Positive
,Negative
或Neutral
放入另一个我附加的列表中......
ReviewList = []
ReviewList.append(maxNr)
我希望如果我将ReviewList
称为
Reviewlist = [Positive, Negative, Neutral, Neutral,... Neutral]
依旧......
我能为此做些什么?我是如此无能为力,尽可能多地尝试阅读,但我只是对此感到困惑......
这是我的 - 不太自信 - 代码:
listOfReview = []
for i in xrange(0,3979):
f = open("ReviewsOutput%i.txt" %i, "r")
myOutput = f.read()
Positive = myOutput.count("Positive")
Negative = myOutput.count("Negative")
Neutral = myOutput.count("Neutral")
myRev = [Positive, Negative, Neutral]
largest = max(myRev)
listOfReview.append(largest)
f.close
答案 0 :(得分:0)
您可以使用词典{'肯定':5,'否定':1,'否定':0}
>>> review = {'positive':5, 'negative':1, 'negative':0}
>>> maxNr = max(review, key=review.get)
>>> maxNr
'positive'
>>> ReviewList = []
>>> ReviewList.append(maxNr)
>>> ReviewList
['positive']
编辑: 你可以试试这个:
listOfReview = []
review = {'Positive':0, 'Negative':0, 'Neutral':0}
for i in xrange(0,3979):
f = open("ReviewsOutput%i.txt" %i, "r")
myOutput = f.read()
review['Positive'] = myOutput.count("Positive")
review['Negative'] = myOutput.count("Negative")
review['Neutral'] = myOutput.count("Neutral")
largest = max(review, key=review.get)
listOfReview.append(largest)
f.close
您还可以通过致电评论[最大]来获取评论次数。