python lampython lambda函数的用法da什么意思(python lambda函数的用法)

前言

1.函数的定义与调用
2.函数的实参和形参的使用方法
3.了解函数的返回值
4.缺省参数的使用方法

一.函数的作用
在开发程序时,使用函数可以提高编写的效率以及代码的重复利用
函数使用包含2个步骤
1.定义函数—封装独立的功能
2.调用函数—执行函数的代码

二.函数的基本使用

1.函数的定义

定义函数的语法格式如下
def 函数名():
函数封装的代码

……..

def     函数名() : 
           函数内部封装的代码

注意:
1.函数名称的命名规则要符合标识符的命名规则
2.def是英文 define的缩写
3.函数名要能够表达出封装代码的功能,方便后续调用

2.函数调用
函数名()

#定义了一个函数,名为 hello,【定义函数时,代码不会被执行】
def hello ():
    print("hello world")
    print("hello world")
    print("hello world")


# 调用函数 hello()
hello()

三.函数的参数

函数的主要功能是封装代码
可以通过函数的参数,来实现函数代码的灵活性

#定义函数如下
def     函数名 (参数1, 参数2,,,,):
           函数内部封装代码
 
#调用函数如下           
函数名(参数1对应的值, 参数2对应的值,,,,)        

注意:调用的时候和定义函数的时候,参数是一 一 对应的,即数量一样
#2个数求和

def my_sum(a, b):
    print(a + b)

my_sum(10, 20)


#3个数求和

def my_sum(a,b,c):
     print(a+b+c)

my_sum(10,20,10)

函数形参和实参

形参:定义函数时,小括号中的参数,是用来接收参数用的,在函数内部作为变量使用

实参:调用函数时,小括号中的参数,是用来把数据传递到函数内部调用的
如下图所示:其中变量 a 和b 是形参,而 10,20是 实参

def my_sum(a, b):
    print(a + b)

my_sum(10, 20)

形参只能是变量,而实参可以常量,表达式,变量等

def sum(a, b):
    print(a + b)#形参a,b只能是变量

sum(10, 20)#实参可以是常量
sum(10+10, 20+20)#实参可以是表达式
x=2
y=3
sum(x,y)#实参可以是变量

形参和实参的传递

1.如果形参的类型为数字或字符串,形参的值改变了 实参的值不会改变!


def test(a):#这里的a是形参,形参就是一个属于函数内部的局部变量
    a += 1
    print(a)

a = 10#定义一个全局变量 a  
test(a)#a=10 调用上方函数 得到 11
print(a)#全局变量a的值没有变化

2.如果形参的类型为列表,字典,集合 形参的值改变会影响实参的值

a = [1,2,3]
def test(a):
    a[0] = 10

print(a)#显示全局变量a的值

test(a)#调用函数,
print(a)

[1, 2, 3]
[10, 2, 3]

缺省参数 :提供实参就使用实参的值,如果没有提供,则使用"缺省值"

定义函数时 可以给参数指定一个默认值,具有默认值的参数叫缺省参数

1.单个缺省值


def test1(a,b=10):
    print(a,b)

test1(1)#此处调用时 没有写第二个参数,所以第二个参数采用缺省值10

#输出结果为:
#1 10

2.多个缺省值


def test1(a=1,b=10):
    print(a,b)

test1()#此处调用时 没有写第二个参数,所以第二个参数采用缺省值10

#输出结果为:
#1 10

注意:def test1(a=1,b) 错误X ,不能把有缺省值地形参写在 没有缺省值地形参在前面

四.函数的返回值
return的作用:
1.结束函数

def test(a):
    print("before")
    if a > 0:
        return # 提前结束函数 # 如果a > 0 则提前结束函数,不打印"after"
    print("after")

test(1)

2.返回值
(1)函数返回值,通过return返回给调用者一个值
(2)多个返回值可以使用逗号隔开

def test():
    print("ABC")
    return "python",1,67.8

s = test()
print(s)

不带表达式的return相当于返回none


def x():
    return  #不带表达式的return相当于返回none

s = x()
print(s)

语法格式

语法格式:
def  函数名(参数1,参数2,,,,):
          函数体
          return 返回值列表

练习1:返回参数中的最大值

def sum(a, b):
    if a > b:
     return a
    else:
        return b

max = sum(2,3)
print(max)

练习2:定义一个函数,参数为a,b 其中a代表开始范围,b代表结束范围,求这个范围内所有整数相加的和

def x(a,b):
    sum = 0
    while a <= b:
        sum +=a
        a +=1
    return sum

print(x(1,3))

五 .函数的嵌套调用

一个函数内部又调用了另外一个函数的情况

def test1():
    print("我是test1")

def test2():
    test1()

test2()
#打印:我是test1

六.函数的局部变量和全局变量

局部变量只能在函数内部使用
全局变量是在函数外部定义的变量,所有的函数都可以使用这个变量

注意:不建议使用全局变量,可变范围大 不好维护

局部变量


def test1():
    a= 1# 局部变量a只属于test1()函数
    print(a)

def test2():
    a = 2# 局部变量a只属于test2()函数
    print(a)

test1()#输出结果为:1
test2()#输出结果为:2

全局变量
一般定义在函数的上方

a = 100
def test1():
    print(a)

def test2():
    print(a)

test1()

全局变量和局部变量重名(这种情况下,局部变量会覆盖掉全局变量)

a = 100
def test1():
    a = 1
    print(a)

def test2():
    print(a)

test1()#输出结果为 1

七.global关键字

作用:可以在函数内部修改全局变量的值

def    函数()
         global  全局变量名
         全局变量名 = 值

a = 100
def test1():
    global a
    a = 8888
    print(a)

test1()#输出结果为 8888

八.匿名函数
1.用lambda关键词创建小型匿名函数
2.不要写def定义函数
3.一行代码就定义一个函数
语法格式如下:
lambda 参数1, 参数2 ……:函数执行代码


sum = lambda a,b:a+b
x = sum (3,6)
print(x)

在lambda函数中可以使用if语句

max = (lambda a,b:a if a > b else b )(4,5)
print(max)
输出结果:5

python lampython lambda函数的用法da什么意思(python lambda函数的用法)插图

**本论坛部分作品是由网友自主投稿和发布、编辑整理上传,对此类作品本论坛仅供提供学习交流和参考,禁止用户用于商业行为,并请于下载后24小时内删除,若喜欢该作品请联系原作者购买正版。如果您发现论坛上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时修改或删除。
158自学网 » python lampython lambda函数的用法da什么意思(python lambda函数的用法)
关于售后:
(1)、因部分资料含有敏感关键词,百度网盘无法分享链接,请联系客服进行发送;
(2)、所有资料在您未收到之前,都可以联系微信/QQ:406499404,无条件退款
(3)仅支持原渠道退回,微信支付,支付宝退回至您当初选择的付款方式
(4)不用担心不给资料,如果没有及时回复也不用担心,看到了都会发给您的,请放心!
(5)因部份资源来源互联网,本站不担保其完整性,请知悉!

提供最优质的资源集合

立即查看 了解详情
赞助VIP 享更多特权,建议使用 QQ 登录
喜欢我嘛?喜欢就按“ctrl+D”收藏我吧!♡