用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 结语

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

相关推荐
烦躁的大鼻嘎3 分钟前
模拟算法实例讲解:从理论到实践的编程之旅
数据结构·c++·算法·leetcode
湫ccc7 分钟前
《Python基础》之pip换国内镜像源
开发语言·python·pip
fhvyxyci8 分钟前
【C++之STL】摸清 string 的模拟实现(下)
开发语言·c++·string
hakesashou9 分钟前
Python中常用的函数介绍
java·网络·python
qq_4597300310 分钟前
C 语言面向对象
c语言·开发语言
菜鸟的人工智能之路19 分钟前
极坐标气泡图:医学数据分析的可视化新视角
python·数据分析·健康医疗
菜鸟学Python20 分钟前
Python 数据分析核心库大全!
开发语言·python·数据挖掘·数据分析
C++忠实粉丝20 分钟前
计算机网络socket编程(4)_TCP socket API 详解
网络·数据结构·c++·网络协议·tcp/ip·计算机网络·算法
小白不太白95021 分钟前
设计模式之 责任链模式
python·设计模式·责任链模式
喜欢猪猪27 分钟前
Django:从入门到精通
后端·python·django