Python列表扩展需求:为银行利息程序添加存款人姓名显示
关联存款人姓名的利息计算程序改造方案
直接用字典就能实现你的需求,下面是修改后的完整代码:
# 用字典存储存款人姓名和对应的存款金额 accounts = {"张三": 12000, "李四": 10000, "王五": 33000, "赵六": 55000} total_interest = 0 # 遍历字典的键值对,同时获取姓名和存款金额 for name, amount in accounts.items(): # 计算12%年利率的利息,简化为乘以0.12 interest = amount * 0.12 total_interest += interest # 按要求格式输出 print(f"{name}存入{amount} = {interest}") print(f"银行全年支付的总利息 = {total_interest}")
关键修改点说明:
- 把原来的金额列表改成字典,用姓名作为键、存款金额作为值,直接完成两者的关联
- 遍历字典时用
items()方法,能同时取出姓名和对应的金额——这应该是你之前用字典没成功的核心原因,之前可能只遍历了键或者值 - 用f-string格式化输出,完全匹配你要的「xxx存入12000 = 1440.0」格式,比原代码的多参数
print更简洁直观 - 利息计算简化为
amount * 0.12,和原代码i*12*1/100结果完全一致,更易读
如果存在一个人有多笔存款的情况,可以改用列表存元组的方式,代码如下:
# 列表中每个元组存储(姓名, 存款金额) accounts = [("张三", 12000), ("李四", 10000), ("张三", 5000), ("王五", 33000)] total_interest = 0 for name, amount in accounts: interest = amount * 0.12 total_interest += interest print(f"{name}存入{amount} = {interest}") print(f"银行全年支付的总利息 = {total_interest}")
内容的提问来源于stack exchange,提问作者Fish pp
相关产品推荐
相关产品推荐

