替换原先的代码片段:
if accnuminput == bank["sam"][0]:
你可以检查银行账号“1234”是否存在于任意账户详情中(账户详情是指包含银行号码和余额的列表)。
所以最终的代码看起来会像这样:
print("欢迎来到银行!\n")
bank = {
"sam": [1234, 150],
"bob": [1235, 250],
}
print("请选择一个操作:\n")
print("1. 查询余额 \n2. 取款 \n3. 存款 \n4. 退出\n")
action = int(input("选择的操作:"))
accnuminput = int(input("请输入账号号码:"))
if action == 1:
# 检查账号号码是否存在于银行字典的任何账户详情中
if accnuminput in {account[0] for account in bank.values()}:
# 使用输入的账号号码获取余额
for name, acc_details in bank.items():
if acc_details[0] == accnuminput:
print(f"{name} 的余额是:{acc_details[1]}")
break
else:
print("未找到该账户。")
但更为合适的解决方案是重构字典,使用银行账号作为键,名字和余额作为值:
print("欢迎来到银行!\n")
bank = {
1234: {"name": "sam", "balance": 150},
1235: {"name": "bob", "balance": 250},
}
print("请选择一个操作:\n")
print("1. 查询余额 \n2. 取款 \n3. 存款 \n4. 退出\n")
action = int(input("选择的操作:"))
accnuminput = int(input("请输入账号号码:"))
if action == 1:
# 检查账号号码是否存在于银行字典中
if accnuminput in bank:
# 使用输入的账号号码获取余额
account_details = bank[accnuminput]
print(f"{account_details['name']} 的余额是:{account_details['balance']}")
else:
print("未找到该账户。")
这里我们使用的是嵌套字典,当然也可以使用字典的列表形式存储相同信息。