计算另一个文件中文件的单词数

时间:2015-12-12 17:52:38

标签: python-3.x

我有2个文本文件。第一个包含1000个单词,每个单词都在一个新行中。第二个包含很多句子。我必须找到第二个文件中第一个文件的每个单词的计数,并将结果写入一个新文件。 (我必须将此结果文件用于另一段代码)。此代码不打印任何内容,输出文件只包含一些字母。我希望有人能解决它。

from collections import Counter

file=open("c:/python34/tes.txt", encoding="utf-8")
f1=file.read().split()
file2=open("c:/python34/new.txt", encoding="utf-8")
f2=file2.read().split()
c = Counter()
for word in f1:
    for w in f2:
        if word==w:
            c[word] += 1
            print(c)

f3=open("c:/python34/result.txt", "w")
f3.write(str(c))
f3.write(" ")

适用于英语。但我的文件语言是波斯语。

测试文件的一部分:

است گفت كرد طرح سال ميشود سياسي تهران ادامه ايران وجود انجام

新文件的一部分:

دانشگاهخبرگزاريدانشجويانايران,دانشگاهايده

1 个答案:

答案 0 :(得分:0)

我没有看到你描述的行为。将样本日期编辑到代码中以生成mcve,就像您应该做的那样(并且输出已更改)

from collections import Counter

f1 = '.است گفت كرد طرح سال مي‌شود سياسي تهران ادامه ايران وجود انجام'.split()
f2 ='دانشگاه خبرگزاري دانشجويان ايران ، دانشگاه ايده‌'.split()
c = Counter()
for word in f1:
    for w in f2:
        if word==w:
            c[word] += 1
            print(w)
print(c)

打印

ايران
Counter({'ايران': 1})
编辑:我复制/粘贴了上面的输出,但看起来不对,可能是因为阿拉伯语从右到左的性质。这可能会使用更多的调查。