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(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。