现在有一个文本文件,需要得到该文本文件中出现次数最多的字符,最后输出该字符和出现的次数,空白符除外
''' | |
1. 读文件内容 | |
2. 统计字符数 | |
3. 求出现次数最多的字符 | |
统计每一个字符在文件中出现的次数,然后每扫描到一个字符时,再更新当前出现次数最多的字符 | |
''' | |
with open('files/readme.txt', 'r') as f: | |
data = f.read() | |
print(data) | |
''' | |
kry: 在文本文件中出现的字符 | |
value: int类型,表示key指定的字符出现的总次数 | |
maxChar: 表示当前统计出现频率最高的字符 | |
''' | |
d = {} | |
maxChar = '' | |
for c in data: | |
if c.isspace(): | |
continue | |
if d.get(c) is None: | |
d[c] = 1 | |
if maxChar == '': | |
maxChar = c | |
else: | |
d[c] += 1 | |
if d[maxChar] < d[c]: | |
maxChar = c | |
print(maxChar) | |
print(d[maxChar]) | |
print(d) |
hello world
I love you
How are you?
o
6
{'h': 1, 'e': 3, 'l': 4, 'o': 6, 'w': 2, 'r': 2, 'd': 1, 'I': 1, 'v': 1, 'y': 2, 'u': 2, 'H': 1, 'a': 1, '?': 1}
正文完