python--简单小案子
#ATM 练习
def login(): print("登陆功能") def transfer(): print("转账功能") def check_balance(): print("查询余额") def register(): print("注册功能") while True: print(""" 1:登陆功能 2.转账功能 3.查询余额 4.注册功能 """) choice=input("请输入编号:").strip() if not choice.isdigit(): print("请输入正确的指令") continue if choice=="0": break func_dic={"1":login,'2':transfer,'3':check_balance,'4':register} if choice in func_dic: func_dic[choice]() else: print("输入的指令不存在")
/usr/local/bin/python3.8 /Users/futantan/PycharmProjects/S14/函数的学习/函数对象.py 1:登陆功能 2.转账功能 3.查询余额 4.注册功能 请输入编号:1 登陆功能 1:登陆功能 2.转账功能 3.查询余额 4.注册功能 请输入编号:2 转账功能 1:登陆功能 2.转账功能 3.查询余额 4.注册功能 请输入编号:3 查询余额 1:登陆功能 2.转账功能 3.查询余额 4.注册功能 请输入编号:4 注册功能 1:登陆功能 2.转账功能 3.查询余额 4.注册功能 请输入编号:5 输入的指令不存在 1:登陆功能 2.转账功能 3.查询余额 4.注册功能 请输入编号:6 输入的指令不存在 1:登陆功能 2.转账功能 3.查询余额 4.注册功能 请输入编号:aa 请输入正确的指令 1:登陆功能 2.转账功能 3.查询余额 4.注册功能
优化程序 def login(): print("登陆功能") def transfer(): print("转账功能") def check_balance(): print("查询余额") def register(): print("注册功能") func_dic={"0":['退出功能',None], '1':["登陆功能",login], '2':["转账功能",transfer], '3':["查询余额",check_balance], '4':["注册功能",register]} while True: for k in func_dic: print(k,func_dic[k][0]) choice = input("请输入编号:").strip() if not choice.isdigit(): print("请输入正确的指令") continue if choice == "0": break if not choice.isdigit(): print("请输入正确的指令") continue if choice in func_dic: func_dic[choice][1]() else: print("输入的指令不存在")
0 退出功能 1 登陆功能 2 转账功能 3 查询余额 4 注册功能 请输入编号:1 登陆功能 0 退出功能 1 登陆功能 2 转账功能 3 查询余额 4 注册功能 请输入编号:2 转账功能 0 退出功能 1 登陆功能 2 转账功能 3 查询余额 4 注册功能 请输入编号:3 查询余额 0 退出功能 1 登陆功能 2 转账功能 3 查询余额 4 注册功能 请输入编号:4 注册功能 0 退出功能 1 登陆功能 2 转账功能 3 查询余额 4 注册功能 请输入编号:5 输入的指令不存在 0 退出功能 1 登陆功能 2 转账功能 3 查询余额 4 注册功能 请输入编号:aa 请输入正确的指令 0 退出功能 1 登陆功能 2 转账功能 3 查询余额 4 注册功能 请输入编号:
每天进步一点点~~