匿名函数

  1. 匿名函数:
    匿名函数的关键字为:lambda 冒号前面是形参,冒号后面是返回值。

代码:

from functools import reduce
def fun(*args,**kwargs):
    return args,kwargs
print(fun([1,2,3,4]))
print(lambda *args,**kwargs:(args,kwargs))
def add(x,y):
    return x+y
print(lambda x,y:x+y,[1,2,3,4])
print(reduce(lambda x,y:x+y,[1,2,3,4]))

运行
在这里插入图片描述

  1. 函数返回多个值的时候返回的是一个元组
    class:面向对象
    代码:

返回5以内数的平方
def mypow(x):
    return x**2
print(list(map(lambda x:x**2,range(5))))
#返回10以内所有偶数
def is_odd(num):
    return num%2==0
print(list(filter(lambda x:x%2==0,range(10))))

运行:
在这里插入图片描述

  1. sorted函数:先传序列,再传key关键字
    代码:

    Info = [
    #等级 人数 班级
    (‘A’,20,5),
    (‘B’,15,3),
    (‘C’,5,2)
    ]
    #默认排序
    print(sorted(Info))
    #按照人数进行排序
    print(sorted(Info,key=(lambda x:x[1])))
    #按照班级进行排序
    print(sorted(Info,key=(lambda x:x[2])))
    #python 内置包
    from operator import itemgetter
    import random
    #按照人数进行排序
    print(sorted(Info,key=itemgetter(1)))

运行:
在这里插入图片描述

  1. 输入一串数组,将0放到最后
    代码:

    n =int(input(‘数组长度:’))
    li = [int(input()) for i in range(n)]
    def move_zero(item):
    if item ==0:
    return 1
    else:
    return 0
    for i in sorted(li,key=move_zero):#sorted默认升序排列,返回值为0的放在前面,返回值为1默认放在后面
    print(i)

运行:
在这里插入图片描述

  1. 奇数偶数排序

代码:

import random
li = [random.randint(1,100) for i in range(10)]
print(li)
print(sorted(li,key=(lambda x:x%2==0)))

运行:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值