python 之函数

函数简介

        Python函数的分类

内置函数:使用的 str() 、 list() 、 len() 等这些都是内置函数

标准库函数:通过 import 语句导入库

第三方库函数:下载安装这些库后,也是通过 import 语句导入

用户自定义函数:用户自己定义的函数

        函数的定义和调用




#求和函数


def qui(a,b):
    
    c=a+b
    print(f'a+b=:{c}')
    #返回数值c
    return c
'''
    这是返回a+b的值
    return a+b

    要返回多个值,使用列表、元组、字典、集合
    return {1,2,3,4},

    
'''

#调用函数
qui(1,2)

#打印函数求和
print(qui(1,2))

a 和 b 称为“形式参数”,简称“形参” 

1 和  2 就是实际参数

1:我们使用 def 来定义函数,然后就是一个空格和函数名称

2:return 返回值:如果函数体中包含 return 语句,则结束函数执行并返回值;

                        如果函数体中不包含 return 语句,则返回 None 值。

3:调用函数之前,必须要先定义函数,即先调用 def 创建函数对象

        全局变量和局部变量

                全局变量


# a就是全局变量
a=0

#函数内部就是局部
def q():
    #这里的a是局部变量
    a=12
    
    print(a) #12
    #想 局部变量变成全局变量就要用
    global a
    '''
    好比房间是局部变量,房外是全局变量
    你想去房外就要开门(钥匙就是 global )
'''
    
q()


print(a)  # 0   这里是打印全局变量

print(a)  # 12   有global 局部变量12 就变成全局变量12


                参数的传递

a0=[10,20,'qwe',12.12,'lo']
a1={10,20,'qwe',12.12,'lo'}
a2={'text':'你好','home':'回家'}

def q(a0,a1,a2):
    print(a0)        #[10,20,'qwe',12.12,'lo']
    print(a1)        #{10,20,'qwe',12.12,'lo'}
    print(a2)        #{'text':'你好','home':'回家'}

q(a0,a1,a2)
    

 可变对象有:字典、列表、集合、自定义的对象

不可变对象有:数字、字符串、元组、function

位置参数:        函数调用时,实参默认按位置顺序传递,需要个数和形参匹配。按位置传递的参数,称为:“位置参数”。

        默认值参数

a0=[10,20,'qwe',12.12,'lo']
a1={10,20,'qwe',12.12,'lo'}
a2={'text':'你好','home':'回家'}

def q(a0,a1,a2 ,b=12,b1=40):
    print(a0)        #[10,20,'qwe',12.12,'lo']
    print(a1)        #{10,20,'qwe',12.12,'lo'}
    print(a2)        #{'text':'你好','home':'回家'}
    print(b)         # 12
    print(b1)        # 40

q(a0,a1,a2)
    

         命名参数

a0=[10,20,'qwe',12.12,'lo']
a1={10,20,'qwe',12.12,'lo'}
a2={'text':'你好','home':'回家'}

def q(a0,a1,a2 ,b=12,b1=40):
    print(a0)        #[10,20,'qwe',12.12,'lo']
    print(a1)        #{10,20,'qwe',12.12,'lo'}
    print(a2)        #{'text':'你好','home':'回家'}
    print(b)         # 12
    print(b1)        # 40
#顺序打乱
q(  a2={'text':'你好','home':'回家'},
    a1={10,20,'qwe',12.12,'lo'},
    a0=[10,20,'qwe',12.12,'lo']
)

    

lambda表达式和匿名函数


d=lambda a,b,c:a+b+c
print(d)    #求三数之和

        递归函数

1:递归(recursion)是一种常见的算法思路

2:递归的基本思想就是“自己调用自己”

3:终止条件:表示递归什么时候结束。一般用于返回值,不再调用自己:

4:归步骤:把第n步的值和第n-1步相关联


#使用递归函数计算阶乘

def q(a):

    if a==1:

        return 1

    return n * q(n-1)

q(3)
        

        内部函数

函数内部 套 函数

        2:封装 - 数据隐藏,外部无法访问“嵌套函数”
        3 :嵌套函数,可以让我们在函数内部避免重复代码。
        4 :闭包

  • 8
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值