学习日记02-3_内置函数

文章目录



# 自律 学习日记02-3

一.内置函数

内置函数:https://www.runoob.com/python/python-built-in-functions.html
常用的内置函数:

  • map函数: 会根据提供的函数对指定序列做映射。
  • filter函数:函数用于过滤序列 (一般结合匿名函数来用)
  • zip函数:函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组
class filter(object):
    '''
    function_or_None:函数
    iterable :可迭代的
    '''
    def __init__(self, function_or_None, iterable): 
        pass

filter:
def fun(n):
    return 20<n<40
li=li=[2,7,8,30,23,32,33]
#li列表的值传到函数fun里面过滤不满足条件的值
res=filter(fun,li)
print(list(res))
>>>[30, 23, 32, 33]

map:
#li列表的值传到函数fun里面输出返回值
res2=map(fun,li)
print(list(res2))
>>>[False, False, False, True, True, True, True]

def fun(n):
    return n*2
li=[2,7,8,30,23,32,33]
res2=map(fun,li)
print(list(res2))
>>>>[4, 14, 16, 60, 46, 64, 66]

zip:打包
res3=zip([1,2,3],[11,22,33],[111,222,333])
print(list(res3))
>>>[(1, 11, 111), (2, 22, 222), (3, 33, 333)]

列表长短不一时,保留最短的。
res4=zip([2,3],[33],[111,222])
print(list(res5))
>>>[(2,33,111)]
[filter扩展:]
1.普通函数:
people_nane = ['cc佩奇','美国队长', 'cc乔治', '黑警察cc']
def a(array):  #接收列表的形参array
    ret = []
    for i in array:
        if not i.startswith('cc'):  #判断是否以'cc'开头
            ret.append(i)   #追加到ret列表中
    return ret  #python中可以返回列表
print(a(people_nane))  #返回值是ret列表,所以这里也是输出ret列表
>>>>>['美国队长', '黑警察cc']

2.匿名函数:
movie_people = ['sb绿巨人','美国队长', 'sb钢铁侠', '蜘蛛侠sb']
def filter_test(func,array):
    ret = []
    for i in array:
        if not func(i):
            ret.append(i)
    return ret
res = filter_test(lambda n:n.endswith('sb'),movie_people)
print(res)
>>>>>[‘sb绿巨人’, ‘美国队长’, ‘sb钢铁侠’]

3.filter函数
movie_people = ['sb绿巨人','美国队长', 'sb钢铁侠', '蜘蛛侠sb']
res = list(filter(lambda n:not n.endswith('sb'),movie_people))
print(res)
>>>['sb绿巨人', '美国队长', 'sb钢铁侠']

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值