python学习--函数(续)

内置函数

1.过滤器

就像捞鱼一样总要过滤掉小鱼,python也有内置过滤器函数filter。
filter需要两个参数,第一个参数是函数体,第二个参数是可迭代对象。
下面实现过滤一个列表中小于等于5的元素:

def fun(x):
    if x > 5:
        return x


print(filter(fun, li))  # <filter object at 0x000002151C0AB108>
print(list(filter(fun, li)))  # [6, 7, 8]

我们需要对filter的输出进行类型转换成list这样我们就可以看到结果了。

2.统一操作

有时候我们需要对元素进行统一操作,这时候我们可以用内置函数map进行统一操作。
map的第一个参数是函数体,后面可以是一个或多个可迭代对象。
下面用匿名函数实现列表元素减一操作:

li = [2, 3, 4, 5]
print(list(map(lambda x: x - 1, li)))  # [1, 2, 3, 4]

同样map也需要类型转换。

3.数据配对

通过zip函数可以实现两个可迭代对象的数据配对成字典。前提数据必须一对一。

tu = ('a', 'b', 'c')
li = [2, 4, 6]
print(dict(zip(tu, li)))  # {'a': 2, 'b': 4, 'c': 6}

回调函数

回调函数是指把一个函数的函数体当作参数传给另一个函数去调用。

def fun1(f):
    f()
    print(111)


def fun2():
    print(222)


fun1(fun2)

fun2作为参数传给fun1,在fun1中实现对fun2的调用。

作业答案

# 判断是否是质数
def isPrime(n) -> bool:
    for i in range(n):
        if n % i == 0:
            return False
    return True


# 判断字符串顺序
def order(str1):
    str2 = "".join(sorted(str1))

    if str2 == str1:

        return "UP"
    str2 = "".join(sorted(str1, reverse=True))
    if str2 == str1:
        return "DOWN"
    return False

结束语

续篇内容较少,所以做的会比较快。
各位看官点个赞吧,这对我非常重要。
点赞!!!
ps:现在关注我,以后就是老粉啦!!!

下篇预告

目前我们已经学习了通过键盘和电脑进行沟通,可是有些数据文件大小有几个G,这种情况总不能人工用键盘输入到电脑中吧……

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值