def partition(li, f, a=[], b=[]):
if len(li) == 0:
return a, b
x, *xs = li
if f(x):
return partition(xs, f, [*a, x], [*b])
return partition(xs, f, [*a], [*b, x])
li = [1,2,3,4,5]
print(partition(li, lambda x: x % 2))
To embed this project on your website, copy the following code and paste it into your website's HTML: