如何用Python编写统计函数调用次数的文件计数功能?
Python 文件计数函数实现
直接上可运行的代码,用with语句自动处理文件打开/关闭,同时捕获文件不存在的异常:
def count_calls(): count_file = "call_count.txt" try: # 尝试读取现有计数 with open(count_file, 'r') as f: current_count = int(f.read().strip()) # 计数加1后写入 current_count += 1 with open(count_file, 'w') as f: f.write(str(current_count)) except FileNotFoundError: # 文件不存在时创建并写入初始值1 with open(count_file, 'w') as f: f.write("1") return current_count if 'current_count' in locals() else 1
关键细节说明
- 使用
with语句:这是Python推荐的文件操作方式,无需手动调用close(),能自动处理文件资源释放,避免因异常导致文件未关闭。 - 异常捕获:首次运行时文件不存在,会触发
FileNotFoundError,此时直接创建文件并写入初始值1。 - 类型转换:读取文件内容时要转成整数(
int()),写入时要转回字符串(str()),因为文件只能写入文本内容。 - 去空格处理:
read().strip()用于移除文件内容中的换行符或空白字符,避免转换整数时出错。
测试方式
每次调用count_calls(),都会返回当前的调用次数,同时更新文件里的数值:
print(count_calls()) # 第一次运行输出1,文件写入1 print(count_calls()) # 第二次运行输出2,文件写入2
内容的提问来源于stack exchange,提问作者Walt
相关产品推荐
相关产品推荐

