zoukankan      html  css  js  c++  java
  • python学习之函数对象、函数嵌套以及闭包函数作业

    1、函数对象优化多分支if的代码练熟

    def log_in():
        print('登录功能')
    
    def register():
        print('注册功能')
    
    def check_balance():
        print('查询余额')
    
    def withdraw():
        print('提现')
    
    def transfer():
        print('转账')
    
    cmd_dic = {
        '0':('退出',exit),
        '1':('注册',register),
        '2':('登录',log_in),
        '3':('查询余额',check_balance),
        '4':('提现',withdraw),
        '5':('转账',transfer)
    }
    while True:
        for k,v in cmd_dic.items():
            print('{:>4}  {}'.format(k,v[0]))
        cmd = input('请输入命令编号:').strip()
        if not cmd.isdigit():
            print('必须输入数字')
        elif cmd in cmd_dic:
            cmd_dic.get(cmd)[1]()
        else:
            print('你输入的命令编号不存在')
    

    2、编写计数器功能,要求调用一次在原有的基础上加一

    ​ 温馨提示:
    ​ I:需要用到的知识点:闭包函数+nonlocal
    ​ II:核心功能如下:

    def counter():
    x+=1
    return x
    要求最终效果类似
    print(couter()) # 1
    print(couter()) # 2
    print(couter()) # 3
    print(couter()) # 4
    print(couter()) # 5

    def outter():
        x=0
        def counter():
            nonlocal x
            x = x + 1
            return x
        return counter
    
    counter = outter()
    print(counter())
    print(counter())
    print(counter())
    print(counter())
    print(counter())
    
  • 相关阅读:
    linux学习笔记-11.正则表达式
    linux学习笔记-10.解压与压缩
    linux学习笔记-9.查找
    linux学习笔记-8.vim
    linux学习笔记-7.文件属性
    linux学习笔记-6.权限
    linux学习笔记-5.用户和组
    @Param注解的用法解析
    linux学习笔记-4.系统命令
    linux学习笔记-3.文件相关命令
  • 原文地址:https://www.cnblogs.com/leilijian/p/12533242.html
Copyright © 2011-2022 走看看