案例学习引自黑马程序员,基于函数知识,实现银行ATM基础控制台功能,能够查询余额、取款、存款、退出。
银行ATM控制台
·主菜单效果
--------------主菜单--------------
周杰轮,您好,欢迎来到黑马银行ATM。请选择操作:
查询余额[输入1]
存款       [输入2]
取款       [输入3]
退出       [输入4]
请输入您的选择:

·查询余额效果
--------------查询余额--------------
周杰轮,您好,您的余额剩余: 5000000元

·存、取款效果
--------------存款--------------
周杰轮,您好,您存款50000元成功
周杰轮,您好,您的余额剩余: 5050000元

--------------取款--------------
周杰轮,您好,您取款50000元成功
周杰轮,您好,您的余额剩余: 4950000元

·定义一个全局变量:money,用来记录银行卡余额(默认5000000
·定义一个全局变量:name,用来记录客户姓名 (启动程序时输入)
·定义如下的函数:
(1)查询余额函数
(2)存款函数
(3)取款函数
(4)主菜单函数

·要求:
(1)程序启动后要求输入客户姓名
(2)查询余额、存款、取款后都会返回主菜单
(3)存款、取款后,都应显示一下当前余额
(4)客户选择退出或输入错误,程序会退出,否则一直运行

打开Pycharm,敲下以下代码:

# 定义全局变量money name
money = 5000000
# 要求客户输入姓名
name = input("请输入您的姓名:")


# 定义查询函数
def query(show_header):
    if show_header:
        print("---------------查询余额---------------")
    print(f"{name},您的余额剩余:{money}元")


# 定义存款函数
def save_money(num):
    global money
    money += num
    print("---------------存款---------------")
    print(f"{name},您好,您存款{num}元成功。")
    query(False)


# 定义取款函数
def get_money(num):
    global money
    money -= num
    print("---------------取款---------------")
    print(f"{name},您好,您取款{num}元成功。")
    query(False)


# 定义主菜单函数
def main():
    print("---------------主菜单---------------")
    print(f"{name},您好,欢迎来到银行ATM,请选择操作:")
    print("查询余额\t[输入1]")
    print("存款\t\t[输入2]")
    print("取款\t\t[输入3]")
    print("退出\t\t[输入4]")
    return input("请输入您的选择:")


# 设置无线循环,确保程序不退出

while True:
    keyboard_input = main()
    if keyboard_input == "1":
        query(True)
        continue
    elif keyboard_input == "2":
        num = int(input("你想要存多少钱?请输入:"))
        save_money(num)
        continue
    elif keyboard_input == "3":
        num = int(input("你想要取多少钱?请输入:"))
        get_money(num)
        continue
    else:
        print("程序已退出!")
        break