根据条件对Python中的列表进行二分法

时间:2016-06-04 15:52:04

标签: python list list-comprehension

列表理解对于过滤列表非常有用。是否有一种很好的方法可以获得另一半,单次传递中的滤除部分?例如;以此示例列表:

>>> a = [5, 10, 45, 99]

以下操作从该列表中选择一些值:

>>> b = [x for x in a if somecondition(x)]
>>> b
>>> [10, 45]

但话又说回来,我还需要另一半,所以我寻求的是:

>>> (b, c) = divideintotwo(x, somecondition)
>>> b
>>> [10, 45]
>>> c
>>> [5, 99]

我可以自己写这个功能。虽然,我宁愿使用存在的那个,如果存在的话。当Python内置几乎所有东西时,似乎有点太基本了,没有一个。

0 个答案:

没有答案