利用函数开发一个简单ATM需求

一、前言

函数的概念就不用过多叙述了,使用函数的目的是为了更高效快速的开发程序等等

函数的定义格式,这里我分为两种:

1、无参数,无返回值

def hellworld():
    print("hello world")

2、有参数,有返回值

def add(x,y):
    sum=x+y
    return sum

注意:

(1)函数可以有多个范围值,但是只要执行到一个return语句,那么就意味着这个函数的调用完成

(2)一个函数到底有没有返回值,就看有没有return,因为只有return才可以返回数据

定义就随便说一点,现在开始本章的主题--利用函数开发一个简单ATM需求:

二、案例--ATM

需求如下图:利用函数开发一个简单ATM需求_第1张图片对于初学者来说,看起来有点麻烦,甚至无从下手。不过不用担心,经我一一分析,就很简单了。

1、准备

(1)定义两个全局变量:money 和 name ,前者用来表余额,后者用来表示姓名,姓名通过键盘输入

money = 50000 
name=input()

(2)定义 4 个 函数 :check_balance() -- 查询余额;deposit() -- 存款;withdraw_money() -- 取款;withdraw() -- 退出

        def check_balance():
            print("---------------查询余额---------------")
            print(f"{name},您好,您的余额剩余:{money}元")
 def deposit():
            global money
            print("---------------存款---------------")
            dep_money = int(input("请输入您需要的存款数:"))
            money += dep_money
            print("---------------存款---------------")
            print(f"{name},您好,您存款:{dep_money}元成功")
            print(f"{name},您好,您的余额剩余:{money}元")
        def withdraw_money(): # 取款
            global money
            print("---------------取款---------------")
            take_money = int(input("请输入您需要的存款数:"))
            if take_money <= money:
                money -= take_money
                print("---------------取款---------------")
                print(f"{name},您好,您取款:{take_money}元成功")
                print(f"{name},您好,您的余额剩余:{money}元")
            else:
                print("---------------取款---------------")
                print(f"{name},您好,您的余额不足,无法取款")
        def withdraw():  # 退出
            print("---------------退出---------------")
            print(f"{name},您好,您已安全退出银行系统")

(3)定义一个变量 num ,用来选择执行哪个功能函数,从键盘获取数据

num = int(input())  # 选择那个函数执行
    if num == 1:
        check_balance()
    elif num == 2:
        deposit()
    elif num == 3:
        withdraw_money()
    elif num == 4:
        withdraw()

(4)利用 while 语句 和 True、False 来判断整个循环是否执行

while flag: 
    ...
    ...
    ...
    if num == 4:
        ...
    flag=False

这样,整个思路就清晰了,现在开始写主题代码

2、主体代码

money = 50000  # 定义一个全局变量
flag = True  # 控制程序流程,为True继续执行,False则退出循环
print("---------------登录界面---------------")
name = input("请输入你的名字:")
print("---------------主菜单---------------")
print(f"{name},您好,欢迎来到黑马银行ATM,请选择操作:")
print("查询余额  [输入1]\t")
print("存款     [输入2]\t")
print("取款     [输入3]\t")
print("退出     [输入4]\t")
while flag:  # 进入循环
    num = int(input())  # 选择那个函数执行
    if num == 4:
        def withdraw():  # 退出
            print("---------------退出---------------")
            print(f"{name},您好,您已安全退出银行系统")


        withdraw()
        flag = False

    elif num == 1:  # 查询余额
        def check_balance():
            print("---------------查询余额---------------")
            print(f"{name},您好,您的余额剩余:{money}元")


        check_balance()
        print("请选择操作:")
        print("查询余额  [输入1]\t")
        print("存款     [输入2]\t")
        print("取款     [输入3]\t")
        print("退出     [输入4]\t")

    elif num == 2:  # 存款
        def deposit():
            global money
            print("---------------存款---------------")
            dep_money = int(input("请输入您需要的存款数:"))
            money += dep_money
            print("---------------存款---------------")
            print(f"{name},您好,您存款:{dep_money}元成功")
            print(f"{name},您好,您的余额剩余:{money}元")


        deposit()
        print("请选择操作:")
        print("查询余额  [输入1]\t")
        print("存款     [输入2]\t")
        print("取款     [输入3]\t")
        print("退出     [输入4]\t")

    elif num == 3:
        def withdraw_money():  # 取款
            global money
            print("---------------取款---------------")
            take_money = int(input("请输入您需要的存款数:"))
            if take_money <= money:
                money -= take_money
                print("---------------取款---------------")
                print(f"{name},您好,您取款:{take_money}元成功")
                print(f"{name},您好,您的余额剩余:{money}元")
            # 这里加了一个 if 判断,如何取款金额大于余额,则不执行上面的操作
            else:
                print("---------------取款---------------")
                print(f"{name},您好,您的余额不足,无法取款")


        withdraw_money()
        print("请选择操作:")
        print("查询余额  [输入1]\t")
        print("存款     [输入2]\t")
        print("取款     [输入3]\t")
        print("退出     [输入4]\t")

代码就是以上这些,经过测试,无bug

3、运行结果

利用函数开发一个简单ATM需求_第2张图片利用函数开发一个简单ATM需求_第3张图片利用函数开发一个简单ATM需求_第4张图片 

你可能感兴趣的:(Python,python,学习)