首页 > 编程语言 > 详细

Python高阶函数

时间:2019-08-02 01:07:08      阅读:100      评论:0      收藏:0      [点我收藏+]

高阶函数:有函数作为参数  或  将函数作为返回值。

1. 效果图:

技术分享图片

2.代码

# 创建一个列表
list_one = [1,2,3,4,5,6,7,8,9,10]

def fn(func , lst) :

    ‘‘‘
        fn()函数可以将指定列表中的所有偶数获取出来,并保存到一个新列表中返回

        参数:
            lst:要进行筛选的列表
    ‘‘‘
    # 创建一个新列表
    new_list = []

    # 对列表进行筛选
    for n in lst :
        # 判断n的奇偶
        if func(n) :
            new_list.append(n)
        # if n > 5 :
        #     new_list.append(n)

    # 返回新列表
    return new_list

print(fn(fn2 , list_one))  #  [2, 4, 6, 8, 10]
print(fn(fn3 , list_one))  #  [6, 7, 8, 9, 10]
print(fn(fn4 , list_one))  #  [3, 6, 9]
# 定义一个函数,用来检查一个任意的数字是否是偶数
def fn2(i) :
    if i % 2 == 0 :
        return True

    return False

# 这个函数用来检查指定的数字是否大于5
def fn3(i):
    if i > 5 :
        return True    
    return False

# 被3整除的数
def fn4(i):
    return i % 3 == 0

print(3%3==0)

优化上述代码效果图:

技术分享图片

 优化代码:

# filter() : 从序列中过滤出符合条件的元素,保存到一个新序列中。 不是一个序列。
# 参数:
#   1.函数,根据该函数来过滤序列(可迭代的结构) 过滤条件
#   2.需要过滤的序列(可迭代的结构)             过滤序列

# 创建一个列表
list_one = [1,2,3,4,5,6,7,8,9,10]

# 被3整除的数
def fn4(i):
    return i % 3 == 0

r = filter(fn3,list_one)
print(r,type(r))
print(list(r))

 

Python高阶函数

原文:https://www.cnblogs.com/FlyingLiao/p/11286183.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!