从文件python中计算字母表

时间:2013-09-02 08:11:26

标签: python python-3.x

从file.txt中读取文本并计算其中每个字母的数量,并且输出应该像a = 2(如果有2个a)和b = 6(如果有6个b)到目前为止我有做得这么多, 这会打印每个字母,但我想打印仅存在的字母。

f= open('cipher.txt')
word= " ".join(line.strip() for line in f)
word=word.lower()
alpha="abcdefghijklmnopqrstuvwxyz"
alpha=list(alpha)
for i in alpha:
  print(i+"="+str(word.count(i)))

但是,如果使用0次的任何字母表,我不想打印那个, 怎么解决这个问题?请帮助

1 个答案:

答案 0 :(得分:0)

import letters
s = 'hello world'
{a:s.count(a) for a in string.letters if s.count(a) != 0}
OUTPUT:
{'d': 1, 'e': 1, 'h': 1, 'l': 3, 'o': 2, 'r': 1, 'w': 1}