用python写出银行管理系统

1 问题

怎么利用已学的python知识简单写出一个银行管理系统,且编写出开户、查询、取款、存款、转账和管理员登录等功能。

2 方法

使用def定义函数、while循环函数、if函数和import函数并带上一些简单的逻辑思维便可以轻松解决这个看似困难实则简单的程序。

python 复制代码
#   1.开户
def kaihu():
xingming=input("请输入姓名:")
shenfenzheng=input("请输入身份证:")
shoujihao=input("请输入手机号:")
mima=int(input("请输入密码:"))
  mima1=int(input('请再次输入密码:'))
   while mima!=mima1:
      print("密码输入有误!请重新开户!")
mima=int(input("请输入密码:"))
      mima1=int(input('请再次输入密码:'))
   return mima
def kaihu1():
jine=int(input("请输入预存金额:"))
  print(f"存款成功!您的卡号为{suijikahao},短信已发至您的,手机号上,请注意查收!\n")
   return jine
kahaomima()
#   合并卡号密码字典
def Merge(kahaomima,zongkahaomima):
ppp = {**kahaomima, **zongkahaomima}
   return ppp
#   卡号密码字典
def kahaomima(a):
kahaomima={}
kahaomima[suijikahao]=a
   return kahaomima
#   合并卡号金额字典
def Jine(kahaojine,zongkahaojine):
eee = {**kahaojine, **zongkahaojine}
   return eee
#   卡号密码字典
def kahaojine(aa):
kahaojine={}
kahaojine[suijikahao]=aa
   return kahaojine
#   随机号码
def Suijikahao():
   import random
   s1=0
   s2=0
   s3=0
   s4=0
   s5=0
   s6=0
   s1=random.randint(0,9)
   while s2==s1:
       s2=random.randint(0,9)
   while s3==s1 or s3==s2:
       s3=random.randint(0,9)
   while s4==s1 or s4==s2 or s4==s3:
       s4=random.randint(0,9)
   while s5==s1 or s5==s2 or s5==s3 or s5==s4:
       s5=random.randint(0,9)
   while s6==s1 or s6==s2 or s6==s3 or s6==s4 or s6==s5:
       s6=random.randint(0,9)
   if s1==0:
       x=s2*100000+s3*10000+s4*1000+s5*100+s6*10
   else:
       x=s1*100000+s2*10000+s3*1000+s4*100+s5*10+s6
   return x
#   2 .查询
def chaxun():
kahao=int(input("请输入您的卡号:"))
   if kahao in zongkahaomima:
mima=input("请输入您的密码:")
fansile=str(zongkahaomima[kahao])
jihui=3
huihe=1
       while mima!=fansile:
cishu=3-huihe
mima=input(f"密码错误!\n您还有{cishu}次机会,请再次输入密码:")
huihe+=1
           if cishu==0:
              print("密码错误次数已达三次,正在返回功能界面!")
               return 0
       print(f"您的账户余额为:{zongkahaojine[kahao]}元\n")
   else:
      print("你输入的卡号不存在!将返回主界面!")
       return 0
#   3.取款
def qukuan():
kahao=int(input("请输入您的卡号:"))
   gg=123
   if kahao in zongkahaomima:
mima=input("请输入您的密码:")
fansile=str(zongkahaomima[kahao])
jihui=3
huihe=1
       while mima!=fansile:
cishu=3-huihe
mima=input(f"密码错误!\n您还有{cishu}次机会,请再次输入密码:")
huihe+=1
           if cishu==0:
              print("密码错误次数已达三次,正在返回功能界面!")
               return gg
       return kahao
   else:
      print("你输入的卡号不存在!将返回主界面!")
       return gg
def qukuan1():
qukuan=int(input("密码正确!\n请输入取款金额:"))
   global yue
   while qukuan>yue:
qukuan=int(input("余额不足!请重新输入取款金额:"))
aaaa=int(zongkahaojine[kahao])
yue=aaaa-qukuan
  print(f"取款成功!请留意手机信息!\n您的余额为:{yue}元\n")
   return yue
#   4.存款
def cunkuan():
kahao=int(input("请输入您的卡号:"))
   gg=123
   if kahao in zongkahaomima:
mima=input("请输入您的密码:")
fansile=str(zongkahaomima[kahao])
jihui=3
huihe=1
       while mima!=fansile:
cishu=3-huihe
mima=input(f"密码错误!\n您还有{cishu}次机会,请再次输入密码:")
huihe+=1
           if cishu==0:
              print("密码错误次数已达三次,正在返回功能界面!")
               return gg
       return kahao
   else:
      print("你输入的卡号不存在!将返回主界面!")
       return gg
def cunkuan1():
cunkuan=int(input("密码正确!\n请输入存款金额:"))
aaaa=int(zongkahaojine[kahao])
yue=aaaa+cunkuan
  print(f"存款成功!请留意手机信息!\n您的余额为:{yue}元\n")
   return yue
#   5.转账
def zhuanzhang():
kahao=int(input("请输入您的卡号:"))
   gg=123
   if kahao in zongkahaomima:
mima=input("请输入您的密码:")
fansile=str(zongkahaomima[kahao])
jihui=3
huihe=1
       while mima!=fansile:
cishu=3-huihe
mima=input(f"密码错误!\n您还有{cishu}次机会,请再次输入密码:")
huihe+=1
           if cishu==0:
              print("密码错误次数已达三次,正在返回功能界面!")
               return gg
       return kahao
   else:
      print("你输入的卡号不存在!将返回主界面!")
       return gg
def zhuanzhang1():
kahao=int(input("请输入您要转账的卡号:"))
   gg=123
   if kahao in zongkahaomima:
mima=input("请输入您的密码:")
fansile=str(zongkahaomima[kahao])
jihui=3
huihe=1
       while mima!=fansile:
cishu=3-huihe
mima=input(f"密码错误!\n您还有{cishu}次机会,请再次输入密码:")
huihe+=1
           if cishu==0:
              print("密码错误次数已达三次,正在返回功能界面!")
               return gg
       return kahao
   else:
      print("你输入的卡号不存在!将返回主界面!")
       return gg
def zhuanzhang2():
zhuanzhang=int(input("密码正确!\n请输入转账金额:"))
   return zhuanzhang
def zhuanzhang3():
aaaa=int(zongkahaojine[kahao1])
yue=aaaa-zhuan
  print(f"转账成功!请留意手机信息!\n您的余额为:{yue}元\n")
   return yue
#   主界面
def zhujiemian():
   import time
   print("正在进入系统,请稍后......")
time.sleep(1)
   print("正在进入系统,请稍后......(3)")
time.sleep(1)
   print("正在进入系统,请稍后......(2)")
time.sleep(1)
   print("正在进入系统,请稍后......(1)")
time.sleep(1)
   print("*"*40)
   print("*"*40)
   print("***      1.开户        2.查询        ***\n***                                  ***   \n***      3.取款        4.存款        ***")
   print("***                                  ***\n***      5.转账        6.锁定        ***\n***                                  ***   \n***      7.解锁        8.退出        ***")
   print("*"*40)
   print("*"*40)
#---------------------------------------------------------------------------------
guanliyuanid='admin'
guanliyuanpsw='admin123'
guanliyuanzhanghu=str(input("请输入管理员账户:"))
guanliyuanmima=str(input("请输入密码:"))
while guanliyuanid != guanliyuanzhanghu or guanliyuanpsw != guanliyuanmima:    
guanliyuanzhanghu=input("账号或密码错误!请重新输入!\n请输入管理员账户:")
guanliyuanmima=input("请输入密码:")
   print("欢迎登录银行系统")
zhujiemian()
zongkahaomima={}
zongkahaojine={}
a = str()
aa = str()
x=0
while x!=13841354351384354381813543846846438:#不知道输入什么就输入一串神秘代码
  x=int(input("请输入你的操作(输入数字1~8):"))
   if x==1:
suijikahao=Suijikahao()
       a = kaihu()
       aa = kaihu1()
       Merge(kahaomima(a),zongkahaomima)
zongkahaomima = Merge(kahaomima(a), zongkahaomima)
Jine(kahaojine(aa),zongkahaojine)
zongkahaojine = Jine(kahaojine(aa),zongkahaojine)
yue=aa
   if x==2:
chaxun()
   if x==3:
kahao = qukuan()
       if kahao!=123:
yue = qukuan1()
zongkahaojine[kahao]=yue
   if x==4:
kahao = cunkuan()
       if kahao!=123:
yue = cunkuan1()
zongkahaojine[kahao]=yue
   if x==5:
       kahao1 = zhuanzhang()
       if kahao1!=123:
zhuan = zhuanzhang2()
           kahao2 = zhuanzhang1()
           if kahao2!=123:
yue = zhuanzhang3()
zongkahaojine[kahao1]=yue
zongkahaojine[kahao2]=zongkahaojine[kahao2]+zhuan
   if x==8:
zhanghu=str(input("请输入账户:"))
mima=str(input("请输入密码:"))
       if zhanghu==guanliyuanid and mima==guanliyuanpsw:
          print("退出成功!")
           break
       else:
          print("账号或密码错误!将重新加载主界面!")
zhujiemian()

3 结语

通过这个程序可以更加简单的了解银行管理系统的运行方法,更可以加强我们的逻辑思维和严谨性。

相关推荐
懒大王爱吃狼1 小时前
Python教程:python枚举类定义和使用
开发语言·前端·javascript·python·python基础·python编程·python书籍
劲夫学编程1 小时前
leetcode:杨辉三角
算法·leetcode·职场和发展
毕竟秋山澪1 小时前
孤岛的总面积(Dfs C#
算法·深度优先
秃头佛爷2 小时前
Python学习大纲总结及注意事项
开发语言·python·学习
待磨的钝刨2 小时前
【格式化查看JSON文件】coco的json文件内容都在一行如何按照json格式查看
开发语言·javascript·json
浮生如梦_3 小时前
Halcon基于laws纹理特征的SVM分类
图像处理·人工智能·算法·支持向量机·计算机视觉·分类·视觉检测
深度学习lover3 小时前
<项目代码>YOLOv8 苹果腐烂识别<目标检测>
人工智能·python·yolo·目标检测·计算机视觉·苹果腐烂识别
XiaoLeisj4 小时前
【JavaEE初阶 — 多线程】单例模式 & 指令重排序问题
java·开发语言·java-ee
API快乐传递者4 小时前
淘宝反爬虫机制的主要手段有哪些?
爬虫·python
励志成为嵌入式工程师5 小时前
c语言简单编程练习9
c语言·开发语言·算法·vim