python自动化测试之函数(匿名函数lambda和三目运算等(高级用法))
2024-08-31 17:17:49
'''
匿名函数:
lambda
'''
def Add(a,b):
print(a+b)
Add(2,3) per = lambda a,b:a+b
print(per(2,3))
'''
三目运算
'''
a = 20
print("True") if a >10 else print("False")
'''
匿名函数+三目运算
'''
login = lambda username,password:print('登录成功') if username == 'shenqiang' and password =='123' else print('登录失败') login('shenqiang','123')
'''
匿名函数,字典的排序
'''
data = lambda **kwargs:dict(sorted(kwargs.items(),key=lambda item:item[0]))
print(data(name='shenqiang',age = 28))
'''函数的内部函数map(),对列表内的同样元素做同样的事情'''
list1 = [1,23,4,5,6] print(list(map(lambda x:x+100,list1)))
'''函数的内部函数filter(),对列表内的元素进行过滤'''
list2 = [1,2,3,4,5,6]
print(list(filter(lambda a:a>1,list2)))
装饰器
'''
封闭:对已经实现功能的代码尽量不去修改
开放:对现有功能的代码进行拓展
需求:在调用f or f1 先打印getInfo,再打印f
'''
def getInfo(func):
def info():
print("无涯自动化测试")
func()
return info @getInfo
def f():
print("网易云平台") @getInfo
def f1():
print("51CTO平台") f() '''
步骤:
1.当我们执行getInfo时候,把被装饰的f当作参数传递
2.getInfo函数的返回值会重新赋值
3.一旦结合了装饰器,调用f函数的时候,实际调用了info内部分函数,原来的f1被覆盖
4。被装饰的f重新赋值给装饰器的info
'''
def login(func):
def inner(Token):
if Token == "":
return func(Token)
else:
print("登录失败")
return inner @login
def profile(Token):
print("登录成功") profile("")
最新文章
- 用canvas画“哆啦A梦”时钟
- magento数据库备份导入还原
- Mac 使用phpMyAdmin
- [codility]Falling-discs
- 网页错误404 or 500
- cocos2d-x 在mac下执行 demo
- RDIFramework.NET平台代码生成器V1.0发布(提供下载)
- 转;VC++中Format函数详解
- Linq 更改主键值
- 考分鄙视(exam)
- *更新*无需root,一条命令强制全屏模式
- Python-socket网络编程-Day8
- HDFS中将普通用户增加到超级用户组supergroup
- 工具篇-Java中一些utils
- 利用css3给座右铭设置漂亮的渐变色
- poj1149构图题
- SpringBoot启动过程分析
- MySQL 5.6 Replication 复制 FAQ
- 布拉格捷克理工大学研究团队:Prisma进化版
- iOS开发-CocoaPods实战
热门文章
- excel 导出长数据 变成科学计数 解决办法
- 关于js返回上一页的实现方法
- ActiveMQ消息队列集群的搭建
- 翻译——2_Linear Regression and Support Vector Regression
- python学习笔记--数据类型和变量总结
- 洛谷P1435 回文子串
- 控制台输出<;迷你DVD管理>;
- iOS个人中心渐变动画、微信对话框、标签选择器、自定义导航栏、短信验证输入框等源码
- 学习spring第二天
- MyBatis从入门到精通(第4章):MyBatis动态SQL【if、choose 和 where、set、trim】