Hier ist mein Code:Wie kann ich alle aus "for clause" resultierenden Werte hinzufügen?
from __future__ import division
import nltk
import string
import re
import math
from nltk import bigrams
f = open('C:/Python27/brown_A1_half.txt', 'rU')
w = open('C:/Python27/brown_A1_half_Out.txt', 'w')
#to read whole file using read()
filecontents = f.read()
from nltk.tokenize import sent_tokenize
sent_tokenize_list = sent_tokenize(filecontents)
result = ''
new_sentences = ["Start " + sentence + " End " for sentence in sent_tokenize_list]
result = ''.join(new_sentences)
tokens = nltk.word_tokenize(result)
#print tokens
bi_tokens = tuple(nltk.bigrams(tokens))
#print bi_tokens
bi_freq = nltk.FreqDist(bi_tokens)
for k, v in bi_freq.items():
print k, v
Dieses Ergebnis bigram
und value(=its frequency")
.
Wie kann ich alle Werte in dieser for-Schleife hinzufügen? Das bedeutet v1
+ v2
+ v3
... vn
. Ich kann sum
Funktion nicht verwenden.
Was meinen Sie, Sie können 'sum' Funktion nicht verwenden? Wo hast du es benutzt und wie? – AKS
Erfahren Sie, wie Sie [Schleifen] (http://www.learnpython.org/en/Loops) verwenden. In Ihrer vorherigen Frage hatten Sie das gleiche Problem. – letmutx
Hier ist der Typ von bi_freq class.nltk.probability.FreqDist. und "k" ist Tupel, "v" ist int. Ich habe gelernt, dass die Summenfunktion auf den Listentyp angewendet werden kann. aber hier, was ich durch meine Codes erhalten habe, sind Tupel, int, Tupel, int, Tupel, int .......... was ich will ist Summe alle int Werte hier .. –