我需要在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))
任何帮助将不胜感激!
如果您提供返回偶数的函数代码会更好