颜清华 发表于 2025-10-6 13:10:04

函数-装饰器基础知识+推导式

装饰器:    在不改变原函数代码基础上,为原函数扩展功能
    不带参数的装饰器
装饰器格式:
##装饰器的编写(函数的嵌套,外城函数返回内城函数):
def wrapper (funk):
    def inner (*args,**kwags):
      #自定义共能,根据功能在funk函数执行前后展现对应将其放在funk()前后
      pass(自定义功能)
      data = funk(*args,**kwargs)
      return data#调用被装饰的函数并返回其值
      #若是return funk 是返回funk代指的函数
    return inner
##装饰器的使用:
@wrapper#@外层函数
def index(*args,**kwargs):
    pass
index()
    @wrapper:1.执行wrapper函数以index函数为参数(即func指向index):wrapper(index)
      2.执行完外城函数后将内城函数返回,赋值给index变量,此时index不在指向原先指向的函数,而是指向内层函数
     带参数的装饰器

 
 
 推导式:
    列表推导式:   v  =   中间没有用逗号隔开              eg:v =
           v =   if条件满足加到列表中     eg:  v =
            
面试题1:
v =
v(2)
print(v)#v列表里面放着10个匿名函数,没有被执行且i循环完后为9
print(v(2))#执行匿名函数且参数x = 2>>>18

面试题2:
def num():
    return
v = #调用num得到含有匿名函数的列表且i=3,for循环此列表,m(2)作为列表v的元素
print(v)>>>     集合推导式:  v = {for循环中的变量  for循环一个可迭代对象}    得到一个集合
     列表推导式:  v = {"k" + str(i) : i   for i in range(10)}    #“k"+str(i) 是字符串的拼接      #注意集合,字典中不是所有数据类型都能作其元素

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: 函数-装饰器基础知识+推导式