编写ATM程序实现下述功能,数据来源于文件db.txt
1、充值功能:用户输入充值钱数,db.txt中该账号钱数完成修改
2、转账功能:用户A向用户B转账1000元,db.txt中完成用户A账号减钱,用户B账号加钱
3、提现功能:用户输入提现金额,db.txt中该账号钱数减少
4、查询余额功能:输入账号查询余额
登录功能
用户登录成功后,内存中记录下该状态,上述功能以当前登录状态为准,必须先登录才能操作
代码如下
import os
user_staus = {'username': None}
def ad_credit(username, amount):
"""
充值功能
:param username:
:param amount:
:return:
"""
if user_staus['username'] is None:
login()
with open('db.txt', 'rt', encoding='utf-8')as f1, \
open('db.txt.swap', 'wt', encoding='utf-8')as f2:
while True:
cont = f1.readline()
if len(cont) == 0:
break
name, remain = cont.strip().split(':')
if username in name:
remain = int(remain) + int(amount)
f2.write('{}:{}\n'.format(name, remain))
print('充值成功,{}的余额为{}'.format(username, remain))
else:
f2.write(cont)
os.remove('db.txt')
os.rename('db.txt.swap', 'db.txt')
def transfer(user_out, user_in, amount):
'''3
转账功能
:param user_out:
:param user_in:
:param amount: