ATm项目基础版python

利用代码实现增删改查

实现功能:

一级菜单:登入,注册,退出

二级菜单:查询余额功能,转账,存款取款,使用记录查询更新

userinfo = {'1001':['123456','王强',2000],'1002':['123123','赵宇',2000.98],'1003':['123000','张玲玲',2000.98]}

# 操作记录信息:
records = {'1001': [['2022-01-07 15:30:12', '取款', '无', '200.00'],
                    ['2022-01-06 17:30:12', '转账', '1002', '200.00'],
                    ['2022-01-05 15:30:13', '存款', '无', '200.00'],
                    ['2022-01-05 15:35:12', '取款', '无', '200.00']],
           '1002': [['2022-01-07 15:30:22', '取款', '无', '200.00'],
                    ['2022-01-06 05:30:12', '转账', '1003', '200.00'],
                    ['2022-01-05 15:22:12', '存款', '无', '200.00'],
                    ['2022-01-05 15:30:09', '取款', '无', '200.00']]
           }

import datetime

while True:
    a = datetime.datetime.now ( ).strftime ("%Y-%m-%d %H:%M:%S")
    print ('    欢迎使用中国工商银行ATM    '.center (50, '='))  # 界面显示1
    print ('【1】登入 【2】注册  【3】退出'.center (45, '-'))  # 界面显示2
    # print(f'当前时间:{a}')
    choose=input('请选择功能选项:')
    if choose=='1':
        print('登入功能')#进入登入功能
        uid=input('请输入你的用户uid:')#键盘输入账号
        pwd=input('请输入你的密码:')#键盘输入密码
        if uid not in userinfo.keys():
            print ('用户不存在')

        else:
            count=0
            while True:
                if pwd==userinfo[uid][0]:
                    print('登入成功')
                    b3 = [f'{datetime.datetime.now ( ).strftime ("%Y-%m-%d %H:%M:%S")}', '登入',f'{uid}', '无']
                    records[uid].append (b3)
                    # f1=True
                    # while f1:
                        # a = datetime.datetime.now ( ).strftime ("%Y-%m-%d %H:%M:%S")
                    print('   请输入你的选项  '.center(50,'='))#二级页面显示
                    print(' 【1】查询余额 【2】转账 【3】取款 【4】存款 【5】查看操作记录  【6】返回主菜单 '.center(50,'-'))
                    print (f'当前时间:{a}')
                    chose1=input('请输入你的业务选项:')
                    #
                    if chose1=='1':#进入余额查询页面
                       username=userinfo[uid][1][0]+ '*'+userinfo[uid][1][-1]
                       zf=userinfo[uid][-1]
                       print(f'尊敬的{username}先生/女士,你的账户余额为{zf}元')
                       b = [f'{datetime.datetime.now ( ).strftime ("%Y-%m-%d %H:%M:%S")}','查询','无', f'{zf}']
                       records[uid].append(b)
                    elif chose1=='2':#进入转账页面
                        print('转帐功能')
                        zuid=input('请输入你需要转账的uid:')
                        zmoney=input('请输入你的转账金额:')
                        zmoney = int (zmoney)
                        if zuid not in userinfo.keys ( ):#账户检验
                            print('账户不存在')
                        elif userinfo[uid][-1]==0:
                            print('余额为0无法转账')

                        elif  zmoney<userinfo[uid][-1]:
                            userinfo[uid][-1] = userinfo[uid][-1] - zmoney
                            userinfo[zuid][-1]=userinfo[zuid][-1]+zmoney
                            print('转账成功')
                            b2 = [f'{datetime.datetime.now ( ).strftime ("%Y-%m-%d %H:%M:%S")}', '转账',zuid, f'{zmoney}']
                            records[uid].append (b2)

                        else:
                            print ('余额不足')
                    elif chose1=='3':#进入取款页面
                        print('取款功能')
                        wmoney=input('请选择你取款的金额是多少:')
                        wmoney=int(wmoney)
                        if wmoney<userinfo[uid][-1]:
                            userinfo[uid][-1]=userinfo[uid][-1]-wmoney
                            print(userinfo[uid][-1])

                            print('取款成功!')
                            username2 = userinfo[uid][1][0] + '*' + userinfo[uid][1][-1]
                            zf2 = userinfo[uid][-1]
                            print (f'尊敬的{username2}先生/女士,你的账户余额为{zf2}元')
                            b1 = [f'{datetime.datetime.now ( ).strftime ("%Y-%m-%d %H:%M:%S")}', '取款', '无', f'{wmoney}']
                            records[uid].append (b1)
                        else:
                            print('你的账户余额不足')
                    elif chose1=='4':#进入存款页面
                            print('存款功能')
                            savmoney=input('请输入你要存款的金额:')
                            savmoney=int(savmoney)
                            userinfo[uid][-1]=userinfo[uid][-1]+savmoney
                            print('存款成功')
                            b4 = [f'{datetime.datetime.now ( ).strftime ("%Y-%m-%d %H:%M:%S")}', '存款', '无', f'{savmoney}']
                            records[uid].append (b4)


                            username1 = userinfo[uid][1][0] + '*' + userinfo[uid][1][-1]
                            zf1 = userinfo[uid][-1]
                            print (f'尊敬的{username1}先生/女士,你的账户余额为{zf1}元')

                            #存款信息存入字典(时间+操作)
                    elif chose1=='5':#进入查看操作记录
                        print('查看操作记录页面')
                        for i in records[uid]:
                            if i[1]=='取款':
                                print(f'{i[0]},进行了{i[1]},取款了{i[3]}元')
                            elif i[1]=='查询':
                                print (f'{i[0]},进行了{i[1]},当前余额为{i[3]}元')
                            elif i[1]=='转账':
                                print(f'{i[0]}进行了{i[1]},转帐账户{i[2]}转账金额为{i[3]}')
                            elif i[1]=='登入':
                                print(f'{i[0]},{i[2]}进行了登入')
                            elif i[1] == '存款':
                                print (f'{i[0]},进行了{i[1]},存了{i[3]}元')
                    elif chose1=='6':
                        print('返回主菜单')
                        break


                else:
                    if count <2:
                        print('密码错误')
                        count=count+1
                        pwd=input('请再次输入密码:')
                    else:
                        exit()#密码超过3次退出

    elif choose=='2':
        print('注册功能')

        useuid=input('请输入你注册的uid(4位纯数字):')
        usepass=input('请输入你注册的6位纯数字密码')
        usename=input('请输入你的用户名:')
        if useuid.isdigit()==False and len(useuid)!=4:#uid判断规则
            print('请输入正确的uid')
        elif useuid in userinfo.keys():
            print('用户已经存在')
        elif usepass.isdigit()==False and len(usepass)!=6:#密码的判断规则
            print('请输入格式正确的密码')
        elif usename.isalpha()==False:#用户名的判断规则
            print('请输入字母或文字')
        else:
            ps={}
            ps[useuid]=[usepass, usename,2000]#uid,密码,用户名,默认金额存入字典
            userinfo.update(ps)
            print('注册成功')

    elif choose=='3':
        print ('退出')
        exit()
  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值