Python 代码浏览合集介绍:为什么不举荐 Python 初学者间接看我的项目源码
本篇浏览的代码实现依据筛选函数将列表元素分成两组。
本篇浏览的代码片段来自于 30-seconds-of-python。
bifurcate_by
def bifurcate_by(lst, fn):
return [[x for x in lst if fn(x)],
[x for x in lst if not fn(x)]
]
# EXAMPLES
bifurcate_by(['beep', 'boop', 'foo', 'bar'],
lambda x: x[0] == 'b'
) # [['beep', 'boop', 'bar'], ['foo'] ]
bifurcate_by
函数接管一个列表和一个筛选函数作为输出。依据筛选函数返回的值将列表元素纳入不同的组中。当筛选函数返回 True
时,纳入第一组,当筛选函数返回 False
时,纳入第二组。
函数应用两个列表推导式生成两个子列表,用于搁置两个组的元素。