Alright ! so a little update :)
I believe i managed to understand most of the content of the code you wrote & tweaking it best i can with the limited knowledge i got in python
I am confused about the line 9 which is 'assignments = [ ]'
I believe it will refer to the list of the assigned week.
Can i get few pointer on how i am supposed to build that list?
I guess it will need to be built from the result of the code you wrote right?
Also, what is the reference to week_num, what does it do and where does it come from, is it built-in into python or something ?
I believe i managed to understand most of the content of the code you wrote & tweaking it best i can with the limited knowledge i got in python
I am confused about the line 9 which is 'assignments = [ ]'
I believe it will refer to the list of the assigned week.
Can i get few pointer on how i am supposed to build that list?
I guess it will need to be built from the result of the code you wrote right?
Also, what is the reference to week_num, what does it do and where does it come from, is it built-in into python or something ?
from collections import OrderedDict preferences = OrderedDict([('Jean', (1, 2, 3, 4, 5)), ('Claude', (1, 2, 3, 4, 5)), ('Van', (1, 2, 3, 4, 5)), ('Kung', (1, 2, 3, 4, 5)), ('Fu', (1, 2, 3, 4, 5)), ('Panda', (1, 2, 3, 4, 5)), ('To',(1, 2, 3, 4, 5)), ('Much', (1, 2, 3, 4 , 5)), ('Absolver', (1, 2, 3, 4, 5))]) weeks = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52] assignments = [ ] tracking = {week_num: 0 for week_num in weeks} assignments = [ ] for preferences in [ ]: assignments.append([ ]) for week_num in preferences: if tracking[week_num] < 3: assignments[-1].append(week_num) tracking[week_num] += 1 if len(assignments[-1]) == 2: break for key, value in assignments.items() : print (key, value)