# 改进婚礼礼金程序
# 。用“w”模式,打开一个文件“婚礼礼金.txt”
# 。写一个while ture
# 。请输入”姓名,礼金“,例如”小明 1000“
# 。将数据存储入文件中,每行一个数据
# 。输入quit 退出循环
# 。退出循环重新读取文件,按行读取
# 把礼金读取到list中
# 输出list的统计数据,加和、最高、最低、平均值
fname = '婚礼礼金.txt'#礼金名单名字赋值给fname
with open(fname,'w',encoding="utf8")as f:
while True:#如果真
print("#" * 20)#输出20个#
info = input("请输入来人和金额:")#将输入的人名和金额赋值给info
if info == "quit":#如果该值和quit相等
break#退出
fields = info.split()#######将该串用空白分隔符分隔开来
if len(fields) == 2:
name, money = fields#如果该串分割后值为2将分割后的第一个第二个分别赋值为名字和钱
else:
continue#否则退出
money = int(money)#把money转化为int类型
f.write(f"{name},{money}\n")
with open(fname,encoding="utf8")as f:
moneys=[]
for line in f:
line=line[:-1]
fields = line.split(",")
if len(fields) == 2:
name, money = fields
else:
continue # 否则退出
moneys.append(int(money))
print("加和:",sum(moneys))
print("最高:", max(moneys))
print("最低:", min(moneys))
print("平均:", sum(moneys)/len(moneys))