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
时,纳入第二组。
函数应用两个列表推导式生成两个子列表,用于搁置两个组的元素。