博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python-----带参数的装饰器以及补充
阅读量:4878 次
发布时间:2019-06-11

本文共 2185 字,大约阅读时间需要 7 分钟。

  1. 带参数的装饰器

    def wrapper_out(n):#     def wrapper(f):#         def inner(*args,**kwargs):#             # if n == 'qq':#             #     username = input('请输入用户名:').strip()#             #     password = input('请输入密码:').strip()#             #     with open('qq',encoding='utf-8') as f1:#             #         for line in f1:#             #             user,pwd = line.strip().split('|')#             #             if username == user and password == pwd:#             #                 print('登陆成功')#             #                 ret = f(*args,**kwargs)#             #                 return ret#             #         return False#             # elif n == 'tiktok':#             #     username = input('请输入用户名:').strip()#             #     password = input('请输入密码:').strip()#             #     with open('tiktok', encoding='utf-8') as f1:#             #         for line in f1:#             #             user, pwd = line.strip().split('|')#             #             if username == user and password == pwd:#             #                 print('登陆成功')#             #                 ret = f(*args, **kwargs)#             #                 return ret#             #         return False#             username = input('请输入用户名:').strip()#             password = input('请输入密码:').strip()#             with open(n,encoding='utf-8') as f1:#                 for line in f1:#                     user,pwd = line.strip().split('|')#                     if username == user and password == pwd:#                         print('登陆成功')#                         ret = f(*args,**kwargs)#                         return ret#                 return False#         return inner#     return wrapper# """# # @wrapper_out('qq')# # def qq():# #     print('成功访问qq')# # qq()# # 看到带参数的装饰器分两步执行:# '''# @wrapper_out('腾讯')#     1. 执行wrapper_out('腾讯') 这个函数,把相应的参数'腾讯' 传给 n,并且得到返回值 wrapper函数名。#     2. 将@与wrapper结合,得到我们之前熟悉的标准版的装饰器按照装饰器的执行流程执行。# '''# """# @wrapper_out('qq')# def qq():#     print('成功访问qq')# @wrapper_out('tiktok')# def tiktok():#     print('成功访问抖音')# qq()# tiktok()
  2. 多个装饰器装饰一个函数

  3. 递归函数

    递归函数:函数或者其他代码都可以解决递归解决的问题,但是递归在某些时候能出奇制胜的效果,人理解函数,神理解递归。

    自己用自己。

转载于:https://www.cnblogs.com/hql1117/p/11085297.html

你可能感兴趣的文章
multiset与set
查看>>
Codeforces 961G Partitions
查看>>
dom和bom是什么?
查看>>
oc 与 swift 之间的桥接文件 (ProjectNmae-Bridging-Header.h) (ProjectNmae-Swift.h)
查看>>
Java集合 HashSet的原理及常用方法
查看>>
HDU 3247 Resource Archiver[AC自动机+最短路+dp]
查看>>
断开/开启网络连接命令
查看>>
安装go 环境
查看>>
三星官方已经放出升级时间了,7月到8月份,太TMD迟了
查看>>
CCF关于NOIP复赛网络申诉问题的公告
查看>>
[Asp.Net] MVC 和Web API Action 获取参数的区别
查看>>
Shiro:学习笔记(2)——授权
查看>>
delphi 新版内存表 FDMemTable
查看>>
MBProgressHUD 动画
查看>>
域名解析记录类型
查看>>
VS中新建网站和新建项目web应用程序的区别?(实际应用总结一点)
查看>>
cordova 创建ios项目
查看>>
数据结构一链表
查看>>
java 定时操作
查看>>
POJ 1737 统计有n个顶点的连通图有多少个 (带标号)
查看>>