Day 5 :函数与 Lambda 表达式

函数与 Lambda 表达式

函数

**1)定义函数用def关键字:def 函数名(参数1,参数2,…):函数体
2)调用函数
函数名(参数1,参数2,…)

def sum(x,y):
    z=x+y
    return z
print("sum(2,5)=",sum(2,5))        #sum(2,5)= 7

3)返回函数
return ()
4)形参
函数定义过程中小括号里面的
5)实参
函数在调用过程中传递进去的
6)关键字参数

>>>def SaySome(name,words)
       print(name+'->'+words)
>>>SaySome(words='让编程改变世界',name='小甲鱼')
小甲鱼->让编程改变世界

7)默认参数:为形参赋初值

>>>def SaySome(name='小甲鱼',words='让编程改变世界')
       print(name+'->'+words)
小甲鱼->让编程改变世界
>>>SaySome('祝子淇')
祝子淇->让编程改变世界

8)收集参数(不知道形参应该为多少时)

>>>def test(*params)
       print('形参的长度是:'len(params))
       print('第二个参数是:',params[1])
>>>test(1,'小甲鱼',3,3.5)  
形参的长度是:4
第二个参数是: 小甲鱼 

9)函数与过程
函数(function):有返回值
过程(procedure):是简单、特殊并且没有返回值的

10)返回值

>>>def back()
       return [1,'小甲鱼',3.14]
>>>back()
[1,'小甲鱼',3.14]
>>>def back()
       return 1,'小甲鱼',3.14
>>>back()
(1,'小甲鱼',3.14

11)嵌套函数

>>> def fun1():
        print"fun1()正在被调用"def fun2():
            print("fun2()正在被调用")
            fun2()
>>>fun1()

12)闭包函数

>>>def funx(x):
       def funy(y):
                  return x*y
       return funy
>>> i=funx(5)
>>> i(6)
30
>>>tunx(5)(6)

lambda表达式

用lambda表达式可以省下定义函数过程,可以使代码更精简

>>>lambda x,y:x-y
<function<lambda> at 0x00000179E4D08158>
>>>h=lambda x,y:x-y
>>>h(87,34)
53

filter(x,y):过滤掉y中不符合x的值
map(x,y):将y中的值经x处理得到新值

递归

>>>def factorial(a):
        if n==1:
               return 1
        else:
               return n*factotial(n-1)
>>>factorial(5)
120
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值