函数知识点

本文详细介绍了如何在Python中定义和调用函数,包括无参、有参、可变参数及默认值,还涵盖了返回值和嵌套函数。重点讲解了装饰器的概念,单层和多层装饰器的使用,以及带参数的装饰器实例。此外,还涉及了匿名函数和递归函数。
摘要由CSDN通过智能技术生成

使用装饰器:

@装饰器名字
def 函数名():
      pass
总结函数

普通函数:
def 函数名([参数,…]):
函数体

1.如何定义函数
2.调用函数
参数
1.无参数:
def func():
pass
func()

2.有参数
一般参数:
def func(a,b):
pass
func(1,2)
可变参数
def func(*args,**kwargs): args单个元素 kwargs 关键字参数
pass
func()
func(1)
func(a=10)
默认值:
def func(a=10,b=100):
pass
func()
func(100)

func(b=99)
返回值
return
没有返回值 None

def func():
    print('-------')
x=func() --->x=None

有返回值:

def func():
      return 'a'
 x=func() ----->x='a'

嵌套函数—>闭包—>装饰器

def func():
      def wrapper():
            ....
      return wrapper

变量的作用域:LEGB

  • L:local 本地 局部变量
  • E:encloseing 嵌套
  • G:Global 全局
  • B:built-in 内置的
  • global nonlocal
  • globals() locals()
    装饰器:
    单层装饰器
def decorate(func):
    def wrapper(*args,**kwargs):
        ....
    return wrapper
@decorate
def house():
    pass

@decorate
def f1(a,b):
    pass

多层装饰器

@zhuang2
@zhuang1
def f1(a,b):
    pass

装饰器带参数:

def outter(a):
    def decorate(func):
    def wrapper(*args,**kwargs):
        ....
@zhuang(10)
def house():
    pass
@zhuang(100)
def street():
    pass

匿名函数: lambda 参数: 返回值
递归函数:自己调用自己

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值