在python中创建我自己的过滤器函数

问题描述 投票:-1回答:1

我需要在python中创建我自己的过滤器函数,即,仅当在其上运行任何给定函数返回True或如果函数为None时,如果迭代器本身返回,它才应从iterable返回值True。我的问题是我无法使用仅返回偶数的函数。

这是我的代码:

def my_own_filter(func, *iterable):
    l = []
    if func is None:
        for i in iterable:
            if i:
                l.append(i)
    else:
        for i in iterable:
            if func(i):
                l.append(i)
    return(l)


print(my_own_filter(None, 1, 0, -1, (), "hello", 1, 2, 3, 4))

任何帮助将不胜感激!

python python-3.x function filter iterable
1个回答
-1
投票

如果您提供返回偶数的函数代码会更好

© www.soinside.com 2019 - 2024. All rights reserved.