python基础第四弹--函数def与匿名函数lambda

'''lambda表达式:lambda是用来声明一个匿名函数'''
'lambda表达式:lambda是用来声明一个匿名函数'
#小试牛刀
f=lambda x,y,z:x+y+z
print(f(1,2,3))
6
'''匿名函数的列表
定义:
列表名=[(lambda表达式1),(lambda表达式2),......]
调用:
列表名[索引](Lambda表达式的参数列表)
'''
#for example
L=[(lambda x:x**2),(lambda x:x**3)]
print(L[0](2),L[1](2))
4 8
'''return返回值
当返回多个值时,以元组返回'''
def f():
    x={'a':2}
    y={'a':2}
    return(x,y)
f()
({'a': 2}, {'a': 2})
#无return时候调用函数的print的返回值
def f1(a):
    print(a)
print(f1('x'))
x
None
ch='b'
'a'<=ch<='c'
True
'A'<=ch<='C'
False
#编程实现球字符串中大写、小写字母的个数
def demo(s):
    result=[0,0]
    for ch in s:
        if 'a'<=ch<='z':
            result[0]+=1
        else:
            'A'<=ch<='Z'
            result[1]+=1
    return result
demo('Niall')
[4, 1]
#参数的传递
'''函数的局部变量和全局变量
全局变量需要global声明
'''
def mod1(m,k):
    m=2
    k=[4,5,6]
    return
def mod2(m,k):
    global n
    n=2
    k[0]=4
    return
n=100
L=[1,2,3]
mod1(n,L)
print(n)
print(L)
mod2(n,L)
print(n)
print(L)
100
[1, 2, 3]
2
[4, 2, 3]
'''任意参数个数
**p:输入参数的格式是key=value的形式,输出的结果是字典
*p:输入参数的格式是不能有等于号的,输出的结果是元组
'''
def demo1(**p):
    return(p)
print(demo1(x=1,y=2,z=3))
def demo2(*p):
    return(p)
print(demo2(1,'a',3))
{'x': 1, 'y': 2, 'z': 3}
(1, 'a', 3)

lambda的作用

1.lambda表达式让代码更加简洁,使用它可以省去函数定义的过程
2. 对于一些只需要使用一次的函数,用lambda来定义,可以省去函数命名问题
3. 同样是定义一个简单的函数,有时候lambda更加清晰明了

def的作用

1.可重复利用
2.区分度高
3.内容可以更加丰富
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值