I have read the answers to the Slicing a list into n nearly-equal-length partitions [duplicate] question.
This is the accepted answer:
def partition(
Complete 2018 solution (python 3.6):
import random def partition (list_in, n): random.shuffle(list_in) return [list_in[i::n] for i in range(n)]
Beware! this may mutate your original list