python实现银行账户系统
Python编写一个简易银行账户系统,供大家参考,具体内容如下
文章中主要涉及的方法是Python中的open(filename,‘r')以读的方式打开文件open(filename,‘w')以写的方式打开文件我们用for*in*读取文件中的数据或者写入文件数据用dict(eval(list2))方法来把字符串转化为字典。
详细代码如下
importmath importre defmain():#主函数 select=True while(select): menu() start_int=input("请选择你您想要操作功能的序号:") ifstart_int=="12": select=False print("你已经退出系统欢迎下次在来") elifstart_int=="4": insert() elifstart_int=="5": login() elifstart_int=="6": show() elifstart_int=="11": delete() elifstart_int=="7": revise() elifstart_int=="8": deposit() elifstart_int=="9": getMoney() elifstart_int=="10": UseMoney() defmenu():#菜单显示 print("1========银行存取钱系统========") print("2===========================") print("3===========功能菜单===========") print("4=========注册个人信息==========") print("5============登入=============") print("6=========查询个人信息==========") print("7=========修改个人账户==========") print("8============存钱=============") print("9============取钱=============") print("10=========显示年收益==========") print("11========注销个人信息==========") print("12===========退出=============") filename="Bank.txt"#定义保存用户信息的文件名 defsave(Bank):#创建文件方法 try: Bank_txt=open(filename,"a") exceptExceptionase: Bank_txt=open(filename,"w") forinfoinBank: Bank_txt.write(str(info)+"\n") Bank_txt.close() definsert():#注册方法 BankList=[]#保存用户信息列表 mark=True#是否继续添加 whilemark: id=input("请输入您的ID密码(如1001):") ifnotid: break name=input("请输入姓名") ifnotname: break try: deposit=int(input("输入你要存款的金额")) ifdeposit==0: break except: print("输入无效,不是输入整型数,请重新输入") continue Bank={"id":id,"name":name,"deposit":deposit} BankList.append(Bank) mark=False save(BankList) print("注册成功") globalg_select g_select=0 globalUsername globalUserpassword deflogin():#登入方法 globalUsername globalg_select globalg_BankQuery globalUserpassword g_BankQuery=[] Username=str(input("请输入您的用户名")) Userpassword=str(input("请输入您的密码")) file=open(filename,'r') Bank=file.readlines()#读取全部内容 forlistinBank: d=dict(eval(list))#字符转化为字典 ifd['name']==Usernameandd['id']==Userpassword: g_BankQuery.append(d) print("登入成功!") g_select=1 else: pass ifnotg_BankQuery: g_select=0 print("登入失败请先注册!") else: pass defshow():#查询个人信息 ifg_select==1: format_title="{:^6}{:^12}" print(format_title.format("名字","存款")) format_date="{:^6}{:^12}" forinfoing_BankQuery: print(format_date.format(str(info.get('name')),str(info.get('deposit')))) else: print("请先登入!") defdelete():#删除个人账户方法 globalg_BankQuery cz=[] globalg_select choose=0 ifg_select==1: whilechoose<3: username=str(input("请输入你姓名")) userpassword=str(input("请输入您的密码")) file=open(filename,'r') Bank=file.readlines()#读取全部内容 forlistinBank: d=dict(eval(list))#字符转化为字典 ifd['name']==usernameandd['id']==userpassword: cz.append(d) file.close() choose=3 NewBank=open(filename,'w')#以写的方式打开文件 forlist2inBank: d2=dict(eval(list2))#字符转化为字典 ifd2['name']!=usernameandd2['id']!=userpassword: NewBank.write(str(d2)+"\n") else: pass else: pass ifnotcz: choose=choose+1 ifchoose==3: g_select=0 print("请重新登入!") else: print("用户名或者密码错误,请重新输入你还有:"+str(3-choose)+"机会") else: g_BankQuery.clear() g_select=0 print("您的个人信息已经注销") else: print("请先登入!") defrevise():#修改个人账户方法 cz=[] globalg_select ifg_select==1: username=input("请输入您的用户名:") userpassword=input("请输入您的密码:") file=open(filename,'r') Bank=file.readlines()#读取全部内容 forlistinBank: d=dict(eval(list))#字符转化为字典 ifd['name']==usernameandd['id']==userpassword: cz.append(d) file.close() NewBank=open(filename,'w')#以写的方式打开文件 forlist2inBank: d2=dict(eval(list2))#字符转化为字典 ifd2['name']==usernameandd2['id']==userpassword: d2['name']=input("输入您的新名字:") d2['id']=input("输入您的新密码:") NewBank.write(str(d2)+"\n") print("修改成功,请重新登入!") g_select=0 else: NewBank.write(str(d2)+"\n") else: pass ifnotcz: print("你输入的密码或者用户名有误请重新登入") g_select=0 else: pass else: print("请先登入!") defdeposit():#存钱方法 globalg_BankQuery globalg_select cz=[] ifg_select==1: money=int(input("请输入你要存多少钱:")) file=open(filename,'r') Bank=file.readlines()#读取全部内容 forlistinBank: d=dict(eval(list))#字符转化为字典 ifd['name']==Usernameandd['id']==Userpassword: cz.append(d) file.close() NewBank=open(filename,'w')#以写的方式打开文件 forlist2inBank: d2=dict(eval(list2))#字符转化为字典 ifd2['name']==Usernameandd2['id']==Userpassword: d2['deposit']=str(int(d2['deposit'])+money) NewBank.write(str(d2)+"\n") print("储存成功!") g_BankQuery.clear() g_BankQuery.append(d2) else: NewBank.write(str(d2)+"\n") else: pass else: print("请先登入!") defgetMoney():#取钱方法 globalg_select globalg_BankQuery cz=[] ifg_select==1: money=int(input("请输入你要取多少钱:")) file=open(filename,'r') Bank=file.readlines()#读取全部内容 forlistinBank: d=dict(eval(list))#字符转化为字典 ifd['name']==Usernameandd['id']==Userpassword: cz.append(d) ifmoney>int(d['deposit']): print("您的余额不足") else: file.close() NewBank=open(filename,'w')#以写的方式打开文件 forlist2inBank: d2=dict(eval(list2))#字符转化为字典 ifd2['name']==Usernameandd2['id']==Userpassword: d2['deposit']=str(int(d2['deposit'])-money) NewBank.write(str(d2)+"\n") print("取钱成功!") g_BankQuery.clear() g_BankQuery.append(d2) else: NewBank.write(str(d2)+"\n") else: pass else: print("请先登入!") defUseMoney():#利息计算 UM=True whileUM: try: money=float(input("请输入你要投资理财多少钱:")) year=int(input("请你输入你要储存多少年:")) except: print("请你输入整数年份!") if010: profitmargin=0.08 ifmoney<0oryear<=0: print("您的本金不能少于0元或者年份不能少于0年") else: UM=False profit=round(money*year*profitmargin,3) print("你储存:"+str(year)+"年将获得的利润会等于:"+str(profit)+"元本金加利润会等于:"+str(profit+money)+"元") if__name__=="__main__":
运行图片:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。