用面向对象的方法,实现一个银行管理系统-简易版

需求一:一个好看的欢迎界面
需求二:可以存钱
需求三:可以取钱
需求四:可以查看当前卡上的余额
需求五:输入0表示退出

实现代码如下:

def input_number(stra):
    """
    从键盘获取数据
    :param stra:提示内容
    :return:
    """
    while True:
        try:
            number=int(input(stra))
            return number
        except ValueError:
            print("输入值错误,请重新输入一个数值:")

class ATM():
    #定义余额为实例属性
    def __init__(self,b):
        self.balance=b
        self.wel_page="""
                欢迎使用
                1.查询余额
                2.存钱
                3.取钱
                0.退出
                """
    def topup(self):
        """
       完成存钱的逻辑
        :return:
        """
        #为提高代码的健壮性,防止用户输入的不是数值
        num=input_number("请输入存钱金额:")
        self.balance+=num

    def takeout(self):
        """
        完成取钱的逻辑
        :return:
        """
        #用户输入要取出的金额
        num=input_number("请输入要取出的金额:")
        #判断账户余额是否充足
        if self.balance>=num:
            self.balance-=num
            print(f"取出成功,当前余额为{self.balance}元")
        else:
           print("金额不足,无法取出")


    def main(self):
        """
        #主方法,实现主要的逻辑
        :return:
        """
        #循环
        while True:
            #打印
            print(self.wel_page)
            #用户选择
            choice=input("请输入你要进行的操作:")
            #判断
            if choice=="1":
                print(f"当前账户余额为{self.balance}元")

            elif choice=="2":
                self.topup()
            elif choice=="3":
                self.takeout()
            elif choice=="0":
                print("程序即将退出")
                break
            else:
                print("输入有误,请重新输入")
#实例化一个银行用户atm1
atm1=ATM(10000)
#调用atm1的主方法,让程序循环起来
atm1.main()

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值