以下是一个Python代码示例来遍历一个文本文件,计算每个不同电子邮件地址发送的电子邮件数量,并打印电子邮件地址以及电子邮件的数量:
import re
def count_emails(file_path):
email_count = {}
with open(file_path, 'r') as file:
for line in file:
# 使用正则表达式匹配电子邮件地址
emails = re.findall(r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b', line)
for email in emails:
# 统计每个电子邮件地址的数量
if email in email_count:
email_count[email] += 1
else:
email_count[email] = 1
# 打印电子邮件地址以及数量
for email, count in email_count.items():
print(f"{email}: {count}")
# 调用函数并传入文本文件路径
count_emails("file.txt")
在这个示例中,我们使用了正则表达式来匹配电子邮件地址。首先,我们使用re.findall
函数来找到文本中所有的电子邮件地址,并将它们存储在一个列表中。然后,我们遍历这个列表,统计每个电子邮件地址出现的次数,并将它们存储在一个字典中。最后,我们遍历字典,并打印每个电子邮件地址以及对应的数量。