函数 (python)

一.函数的定义


def 函数名称 ([参数列表(参数之间逗号隔开,可以为空)]):

        #缩进 函数体

        #return 返回值(可以没有,也可以返回多个值)

当一个函数中遇到return 时,就会退出该函数

二.函数的调用

函数名称([参数(没有就不写)])

注意:函数名称后面要加括号,否则输出的为函数的地址。

三.全局变量与局部变量

全局变量:定义在文件中的变量

局部变量:定义在函数内的变量,只能在函数内部调用,在函数外不能访问该变量。

在函数内可以访问全局变量

全局变量不能直接在函数内进行操作,如果需要在函数内部操作全局变量,需要调用global关键字

四.函数的参数

函数的参数:位置参数、默认值参数、命名参数、可变参数

1.位置参数

def power(x,n): 
    s = 1
    while n > 0:
        n = n -1 
        s = s * x 
    return s
print(power(5,6)

调用函数时依次按照顺序传入两个参数的值

2.默认值参数

给一个参数设定默认值,如果这个参数没有传入相对应的值,则按照默认值进行计算,如果传入对应的值,则按照传入的值进行计算。

注意:默认值参数要写在位置参数后面,默认值在非必要的情况下不要指向可变对象(例如:列表)

3.命名参数

用 * 来表示可变参数

允许调用函数的时候传入0个或者任意个参数,系统会将这些参数自动封装成元组

def num(*numbers):
    sum = 0
    for n in numbers:
        sum = sum + n*n
    return sum
sum(1,2,3,4)

4.可变参数

用 ** 来表示命名参数

允许调用函数的时候传入0个或者任意个参数,系统会将这些参数自动封装成字典

def person(name,age,**kw):
    print("name:",name,"age:",age,"other:",kw)
person("zhangsan",18,city="Beijing")

输出结果:

name: zhangsan age: 18 other: {'city': 'Beijing'}

5.命名关键字参数:

用  *,(固定参数名) 来表示
调用函数的时候给固定的参数传入值,系统会将这些参数自动封装成字典

def person(name,age,*,city,gender):
    print(name,age,city,gender)
person("zhansgan",24,city="beijing",gender="男")

输出结果:

zhansgan 24 beijing 男

注意:调用函数时参数中必须要出现命名关键字,否则系统会认为你传入的时位置参数。

6.参数组合

五种参数类型可以组合使用,但是有一定的顺序,顺序是:位置参数、默认值参数、可变参数、命 名关键字参数、关键字参数

五.函数的递归

在函数的内部,调用自己

注意:递归时一定要有结束条件。

六.匿名函数

匿名函数:lambda表达式

语法:

lambda 参数 :代码 返回值(没有就不写)

sum_lambda = lambda a,b,c: a + b + c
print(sum_lambda(1,100,1000))

输出结果:
 

1101

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值