代码:
# coding : UTF-8
NAME_LENGTH = 10 # 姓名内容长度为10
READ_LENGTH = 5 # 年龄内容长度为5(其中包含换行符“\n”)
line_count = 0 # 获取年龄信息
def get_age(): # 获取年龄信息
seek_offset = 0 # 当前偏移量
with open(file="d:\\abc.txt") as file:
while True: # 持续进行内容读取
file.seek(seek_offset + NAME_LENGTH) # 读取年龄位置
data = file.read(READ_LENGTH) # 读取数据长度
if data: #可以获取data数据
global line_count # 引用全局变量
line_count +=1 # 统计的行数加1
seek_offset = file.tell() # 修改读取偏移量
yield int(data) # 局部返回
else:
return # 结束函数调用
def main(): # 主函数
sum = 0 # 保存总年龄
for age in get_age():
sum = sum + age # 保存全部年龄
print("一共读取了%d条信息,用户平均年龄为:%3.2f" % (line_count,sum/line_count))
if __name__ == "__main__": # 判断程序执行名称
main() # 调用主函数
代码执行结果:
一共读取了3条信息,用户平均年龄为:3.00
1万+

被折叠的 条评论
为什么被折叠?



