计算文本文件中的每个不同字符

时间:2015-05-25 00:27:29

标签: python python-3.x

我对python和编码比较陌生,我正在尝试编写一个代码来计算文本文件中每个不同字符出现的次数,同时忽略字符的大小写。

到目前为止我所拥有的是

letters = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o',
       'p','q','r','s','t','u','v','w','x','y','z']

prompt = "Enter filename: "

titles = "char       count\n----       -----"

itemfmt = "{0:5s}{1:10d}"

totalfmt = "total{0:10d}"

whiteSpace = {' ':'space', '\t':'tab', '\n':'nline', '\r':'crtn'}

filename = input(prompt)

fname = filename
numberCharacters = 0
fname = open(filename, 'r')

for line in fname:
    linecount +=1
    word = line.split()
    word += words
for word in words:
    for char in word:
        numberCharacters += 1
return numberCharacters

有些事情似乎错了。有没有更有效的方法来完成我想要的任务?

谢谢!

3 个答案:

答案 0 :(得分:1)

{{1}}

然后你可以按照自己的意愿显示它们。

答案 1 :(得分:0)

您过度复杂,只需将文件内容转换为一组即可消除重复的字符:

number_diff_value = len(set(open("file_path").read()))

答案 2 :(得分:0)

更好的方法是使用str

chars = {} for l in open('filename', 'rU'): for c in l: if not c.isalpha(): continue chars[c] = chars.get(c, 0) + 1 方法
chars

然后使用dict public void delay() { try { Thread.sleep(100); } catch (Exception e) {} } 编写最终的直方图。