统计文件【hamlet.txt】中小写字母a-z的字符分布,即出现a-z字符的数量,并按a-z的顺序输出结果。同时请输出文件一共包含的字符数量。python实现
时间: 2024-02-24 19:55:43 浏览: 82
可以使用Python中的文件读写和字符串操作来实现统计文件中小写字母a-z的字符分布并按a-z的顺序输出结果的功能。代码如下:
```python
with open('hamlet.txt', 'r') as f:
text = f.read()
count = {}
total = 0
for c in text:
if c.islower() and c.isalpha():
count[c] = count.get(c, 0) + 1
total += 1
print("小写字母a-z的字符分布:")
for c in sorted(count.keys()):
print(f"{c}: {count[c]}")
print(f"文件总字符数量:{total}")
```
代码中,首先使用`with`语句打开文件`hamlet.txt`并读取全部内容到字符串变量`text`中。然后,使用一个字典`count`来统计每个小写字母a-z的字符出现的次数,并使用一个变量`total`来记录总字符数量。其中,`c.islower()`判断`c`是否为小写字母,`c.isalpha()`判断`c`是否为字母(包括大写和小写字母),`count.get(c, 0)`获取字典`count`中键为`c`的值,如果不存在则返回默认值0,`count[c] = count.get(c, 0) + 1`将字典`count`中键为`c`的值加1。最后,使用`sorted`函数将字典`count`的键按a-z的顺序排序,并使用`for`循环遍历输出每个小写字母a-z的字符出现的次数,使用`f-string`格式化输出结果。同时,使用`f-string`和变量`total`输出文件总字符数量。
阅读全文