def round_robin(units, sets=None):
    """ Generates a schedule of "fair" pairings from a list of units """
count = len(units)
sets = sets or count - 1
half = count / 2
for turn in range(sets):
    left = units[:half]
right = units[count - half - 1 + 1:][::-1]
pairings = zip(left, right)
if turn % 2 == 1:
    pass
Generating natural schedule for a sports league