装饰器 内置函数
1、装饰器
它在不改变原有的函数的代码和调用方式,给他添加新功能。
1、函数即变量
2、def func(func1):
func1()
3、函数里面也可以嵌套函数
装饰器本身就是一个函数
高阶函数+函数嵌套 = 装饰器
2、内置函数
i = int('345')#转换int类型
fl = float('2.1')#转换float类型
dic =dict(k=1,v=2)#转换成字典
lis = list('1,2,3')#转换成list
new_set = set(lis)
def say():
pass
print(callable(say))#判断传入的对象是否可调用
print(chr(98))#打印数字对应的ascii
print(ord('b'))#打印字符串对应的ascii码
print(dir(say))#打印传入对象的可调用方法
print(eval('1+2'))#执行python代码,
#只能执行简单的,定义数据类型和运算
exec('def a():print(1234)')#执行python代码
print(round(3.1455926,2))#取几位小数
lis = [5,3,2,4,121]
names = {
"maryy":19,
"lily":20,
"hanmeimei":38
}
[(marry,19),(lily,20),(hanmeimei,38)]
new_names = sorted(names.items(),key=lambda x:x[1])
#按照字典的value进行排序
new_names2 = sorted(names.items())
#按照字典的key进行排序
s = lambda x,y:x+y#冒号号前面的x,y是入参,冒号后面的是返回值
print(s(1,9))#因为函数即变量,如果没有定一个变量把lambda存起来的话,它就不在内存里,没法执行,所有把它放到s这个变量里面
2、python调用接口
urllib模块: urlopen('url').read()#get
urlopen('url',urlencode(data).encode()).read()#post
requests:
requests.get(url,data)
requests.post(url,data,cookies=cookie,
auth=('admin',12345),
headers=header,
files={'file',open('user')},
json=data
)
3、发邮件
pass
4、字符串转字典
new_parm={}
for p in parm.split(';'):#['user_id=1','price=20']
pa = p.split('=')
new_parm[pa[0]]=pa[1]
res = requests.post(url,new_parm).text#返回报文
这个是结果校验的
new_res = res.replace('": "','=').replace('": ','=')
print(new_res)
for res in src_res.split(';'):
if res in new_res:
print('测试通过')