I tell them exactly what I’m looking for and am very clear up front. Many of them don’t follow orders, they put everything into one big function and don’t try to abstract at all.
[x for x in my_list if x % 2 == 0] + [x for x in my_list if x % 2 != 0]
It is a great question for talking about performance tuning an algorithm, but just seems bizarre to be pushing for abstraction on this problem.
lambda f: [x for x in my_list if f(x)] + [x for x in my_list if not f(x)]