课时08 python 函数

1. 认识python 函数

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

#函数的定义
def demo():   
    print("aaaaaaaa")
    print("cccccccc")
    
#函数的使用   
demo()

aaaaaaaa
cccccccc

2.函数的定义格式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
即定义的时候给这些参数设置默认值,例如 def myinfo(name = “zhangsan”,age=20)
注:默认值一定要放在最后。没有默认值的时候放左侧,有默认值的放在右侧。

在这里插入图片描述
例如:

myinfo(name="张三",age="20")

关键字参数+默认 ,这种方式更强大。
在这里插入图片描述
在这里插入图片描述
非关键字收集参数*
关键字收集参数**

例如

#非关键字收集参数*
def mysum(*numbers):
    print(numbers)
     
#测试
mysum(10,20,30,40)

(10, 20, 30, 40)

# 关键字收集参数**
def demo(**info):
    print(info)

#测试
demo(name="lisi",age=20)

{‘name’: ‘lisi’, ‘age’: 20}
在这里插入图片描述
(不建议)

(1)普通无参数的函数定义
#函数的定义
def myinfo():   
    print("大家好!")
    print("我的名字叫张三,今年20岁。")
    print("很高兴和大家认识!")
    
#函数的使用   
myinfo()

大家好!
我的名字叫张三,今年20岁。
很高兴和大家认识!

#自定义获取100的累加值函数
def mysum():
    res = 0
    for i in range(101):
        res +=i
    print("100的累加值:",res)

# 测试
mysum()

100的累加值: 5050

(2)普通参数的函数定义
#函数的定义
def myinfo(name,age):   
    print("大家好!")
    print("我的名字叫{},今年{}岁。".format(name,age))
    print("很高兴和大家认识!")  
    
#函数的使用   
myinfo("zhangsan",20)

大家好!
我的名字叫zhangsan,今年20岁。
很高兴和大家认识!

#自定义获取100的累加值函数
def mysum(m):
    res = 0
    for i in range(m+1):
        res +=i
    print(m,"的累加值:",res)

# 函数的使用
mysum(10)

10 的累加值: 55

3.函数的返回值

在这里插入图片描述

#函数的返回值
def myadd(a,b):
    return a+b     #返回的时候是返回给调用者

m = myadd(10,20)*2
print(m)

60
注:若 return a+b 改为print(a + b) ,那么输出的结果为30,乘法失效。

4.函数文档

在这里插入图片描述
在这里插入图片描述

#函数的文档使用
def mysum(m):
    '''
    获取指定参数累加值的函数
    @param int m 参数m为要求累加的值
    @return int 返回累加的结果
    '''
    res = 0
    for i in range(m+1):
        res += i
    return res
 
print("10的累加值: ",mysum(10)

10的累加值: 55

#使用函数的文档
help(mysum)

在这里插入图片描述

print(mysum.__doc__)

在这里插入图片描述

5.局部变量和全局变量

在这里插入图片描述

#全局变量:在函数外定义的变量
name = "zhangsan"
def demo():
    global name
    name = "lisi"
    print(name)  #不可修改外部全局变量,除非使用global声明一下
    
demo()
print(name)

lisi
lisi

#局部变量:在函数内声明的变量
def fun():
    m = 0
    m +=1
    print(m)
    print(locals())   # 输出当前环境下的局部变量都有哪些
fun()

1
{‘m’: 1}

6.匿名函数 lambda

在这里插入图片描述

# 匿名函数 lambda
#定义一个匿名函数
myadd = lambda a,b:a+b   #a+b 是一个函数体

#等价于如下的定义
def myadd(a,b):
    return a*b
# myadd = demo

print(myadd(10,20))
print(myadd(30,40))

200
1200

7. 闭包函数

在这里插入图片描述

#闭包函数定义处理
def fun():
    m = 0
    def dd():
        nonlocal m  #使用外部函数中的局部变量,类似于global
        m += 1
        print(m)
    return dd

d = fun()

d()
d()
d()
d()

1
2
3
4

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值