この種の構造は、辞書としてより適切にモデル化されます。キーは部屋のコードです。各ルームコードキーにはリストがあり、このリストには各コース/イベントを表すタプルがあります。
schedule = dict()
schedule['room_1'] = [(start_time,end_time,module_code,period_type,..),
(start_time,end_time,module_code,period.....),
...
]
schedule['room_2'] = [ ... ] # as above
これにより、文書化が容易になり、次のようなことができるようになります。
for i in schedule:
print '{0} events scheduled for room {1}".format(len(schedule[i]),i)
これを文書化する方法は次のとおりです。
def foo(bar):
'''
Does some magic with `bar`. Cats may be harmed and
the space time continuum may be disturbed if you pass in
silly things like None.
Args:
bar: The best name for a variable since foo.
Returns:
A dict mapping keys to the room and rows representing
the room's schedule. A row is represented as a list.
Each element of the list is a tuple of strings representing
and event. For example:
{'room_1': [(start_time,end_time,module_code,period_type,..)]}
'''