Python从文本文件创建字母数

时间:2016-10-04 17:05:17

标签: python

我正在尝试仅对文本文件中的字母进行计数。我想排除任何标点符号和空格。这是我到目前为止所拥有的。我一直在寻找这样做的方法,但每当我尝试排除某些字符时,我都会遇到错误。非常感谢任何帮助。

#Read Text Files To Memory
with open("encryptedA.txt") as A:
    AText = A.read()
with open("encryptedB.txt") as B:
    BText = B.read()

#Create Dictionary Object
from collections import Counter
CountA = Counter(AText)
print(CountA)
CountB = Counter(BText)
print(CountB)

1 个答案:

答案 0 :(得分:0)

您走在正确的轨道上,但是您希望根据字母(使用isalpha())或字母数字(使用isalnum())的字符过滤文本文件:

from collections import Counter
with open('data.txt') as f:
    print (Counter(c for c in f.read() if c.isalpha())) # or c.isalnum()

对于我的示例文件,打印:

Counter({'t': 3, 'o': 3, 'r': 3, 'y': 2, 's': 2, 'h': 2, 'p': 2, 'a': 2, 'g': 1, 'G': 1, 'H': 1, 'i': 1, 'e': 1, 'M': 1, 'S': 1})