在文本文件bigbook.txt中包含有很长篇幅的英语短文,编写程序要求统计文件的所有短文中包含英文字母“A”的个数,并显示统计的时间(要求使用两种方法,参考教材11.4、11.5节内容)。
时间: 2024-05-05 21:20:36 浏览: 60
好的,我会为你解答这个问题。
方法一:使用Python内置的文件读取和字符串查找函数。
```python
import time
start_time = time.time()
with open('bigbook.txt', 'r', encoding='utf-8') as f:
content = f.read()
count = content.count('A') + content.count('a')
end_time = time.time()
print("The number of 'A' in the file is:", count)
print("Time used:", end_time - start_time, "seconds.")
```
方法二:使用Python内置的文件读取和正则表达式模块。
```python
import re
import time
start_time = time.time()
with open('bigbook.txt', 'r', encoding='utf-8') as f:
content = f.read()
count = len(re.findall(r'[Aa]', content))
end_time = time.time()
print("The number of 'A' in the file is:", count)
print("Time used:", end_time - start_time, "seconds.")
```
以上两种方法都可以实现统计英文字母“A”的个数,并且输出统计的时间。其中方法一使用了Python内置的字符串查找函数count(),方法二使用了正则表达式模块re的findall()函数。两种方法的结果应该是相同的。
阅读全文