In [2]:
import calendar
import datetime
from pprint import pprint

In [168]:
def gen_reverse_date(year):
    '''Generates either a None -- new week, or a day of the week.'''
    for month in reversed(cal.yeardatescalendar(year,1)): 
        for week in reversed(month[0]):
            yield None
            
            for day in reversed(week):
                yield day
def get_dates(ndate):
    today = datetime.date.today()
    cal = calendar.Calendar(6)
    
    out = [[]]
    getDate = False
    year = today.year

    while len(out) < ndate:
        for day in gen_reverse_date(year):
            
            # A Week has past
            if day is None:
                if getDate:
                    if len(out[-1]) == 7:
                        out.append([])
                continue
            
            # get previous dates
            if day < today:
                getDate = True
            
            # add to the output
            if getDate and (day.year == year):
                try:
                    if day not in out[-2]:
                        raise ValueError
                except:
                    out[-1].append(day)
            
            # Return if needed
            if len(out) == ndate:
                return out

        
        # Keep going back in time
        year -= 1
        
        if year < 2010:
            raise ValueError('Why are you going back in time?!')
#     return list(reversed(out))
    return out

rows = get_dates(54)
pprint(rows)


[[datetime.date(2014, 1, 25),
  datetime.date(2014, 1, 24),
  datetime.date(2014, 1, 23),
  datetime.date(2014, 1, 22),
  datetime.date(2014, 1, 21),
  datetime.date(2014, 1, 20),
  datetime.date(2014, 1, 19)],
 [datetime.date(2014, 1, 18),
  datetime.date(2014, 1, 17),
  datetime.date(2014, 1, 16),
  datetime.date(2014, 1, 15),
  datetime.date(2014, 1, 14),
  datetime.date(2014, 1, 13),
  datetime.date(2014, 1, 12)],
 [datetime.date(2014, 1, 11),
  datetime.date(2014, 1, 10),
  datetime.date(2014, 1, 9),
  datetime.date(2014, 1, 8),
  datetime.date(2014, 1, 7),
  datetime.date(2014, 1, 6),
  datetime.date(2014, 1, 5)],
 [datetime.date(2014, 1, 4),
  datetime.date(2014, 1, 3),
  datetime.date(2014, 1, 2),
  datetime.date(2014, 1, 1),
  datetime.date(2013, 12, 31),
  datetime.date(2013, 12, 30),
  datetime.date(2013, 12, 29)],
 [datetime.date(2013, 12, 28),
  datetime.date(2013, 12, 27),
  datetime.date(2013, 12, 26),
  datetime.date(2013, 12, 25),
  datetime.date(2013, 12, 24),
  datetime.date(2013, 12, 23),
  datetime.date(2013, 12, 22)],
 [datetime.date(2013, 12, 21),
  datetime.date(2013, 12, 20),
  datetime.date(2013, 12, 19),
  datetime.date(2013, 12, 18),
  datetime.date(2013, 12, 17),
  datetime.date(2013, 12, 16),
  datetime.date(2013, 12, 15)],
 [datetime.date(2013, 12, 14),
  datetime.date(2013, 12, 13),
  datetime.date(2013, 12, 12),
  datetime.date(2013, 12, 11),
  datetime.date(2013, 12, 10),
  datetime.date(2013, 12, 9),
  datetime.date(2013, 12, 8)],
 [datetime.date(2013, 12, 7),
  datetime.date(2013, 12, 6),
  datetime.date(2013, 12, 5),
  datetime.date(2013, 12, 4),
  datetime.date(2013, 12, 3),
  datetime.date(2013, 12, 2),
  datetime.date(2013, 12, 1)],
 [datetime.date(2013, 11, 30),
  datetime.date(2013, 11, 29),
  datetime.date(2013, 11, 28),
  datetime.date(2013, 11, 27),
  datetime.date(2013, 11, 26),
  datetime.date(2013, 11, 25),
  datetime.date(2013, 11, 24)],
 [datetime.date(2013, 11, 23),
  datetime.date(2013, 11, 22),
  datetime.date(2013, 11, 21),
  datetime.date(2013, 11, 20),
  datetime.date(2013, 11, 19),
  datetime.date(2013, 11, 18),
  datetime.date(2013, 11, 17)],
 [datetime.date(2013, 11, 16),
  datetime.date(2013, 11, 15),
  datetime.date(2013, 11, 14),
  datetime.date(2013, 11, 13),
  datetime.date(2013, 11, 12),
  datetime.date(2013, 11, 11),
  datetime.date(2013, 11, 10)],
 [datetime.date(2013, 11, 9),
  datetime.date(2013, 11, 8),
  datetime.date(2013, 11, 7),
  datetime.date(2013, 11, 6),
  datetime.date(2013, 11, 5),
  datetime.date(2013, 11, 4),
  datetime.date(2013, 11, 3)],
 [datetime.date(2013, 11, 2),
  datetime.date(2013, 11, 1),
  datetime.date(2013, 10, 31),
  datetime.date(2013, 10, 30),
  datetime.date(2013, 10, 29),
  datetime.date(2013, 10, 28),
  datetime.date(2013, 10, 27)],
 [datetime.date(2013, 10, 26),
  datetime.date(2013, 10, 25),
  datetime.date(2013, 10, 24),
  datetime.date(2013, 10, 23),
  datetime.date(2013, 10, 22),
  datetime.date(2013, 10, 21),
  datetime.date(2013, 10, 20)],
 [datetime.date(2013, 10, 19),
  datetime.date(2013, 10, 18),
  datetime.date(2013, 10, 17),
  datetime.date(2013, 10, 16),
  datetime.date(2013, 10, 15),
  datetime.date(2013, 10, 14),
  datetime.date(2013, 10, 13)],
 [datetime.date(2013, 10, 12),
  datetime.date(2013, 10, 11),
  datetime.date(2013, 10, 10),
  datetime.date(2013, 10, 9),
  datetime.date(2013, 10, 8),
  datetime.date(2013, 10, 7),
  datetime.date(2013, 10, 6)],
 [datetime.date(2013, 10, 5),
  datetime.date(2013, 10, 4),
  datetime.date(2013, 10, 3),
  datetime.date(2013, 10, 2),
  datetime.date(2013, 10, 1),
  datetime.date(2013, 9, 30),
  datetime.date(2013, 9, 29)],
 [datetime.date(2013, 9, 28),
  datetime.date(2013, 9, 27),
  datetime.date(2013, 9, 26),
  datetime.date(2013, 9, 25),
  datetime.date(2013, 9, 24),
  datetime.date(2013, 9, 23),
  datetime.date(2013, 9, 22)],
 [datetime.date(2013, 9, 21),
  datetime.date(2013, 9, 20),
  datetime.date(2013, 9, 19),
  datetime.date(2013, 9, 18),
  datetime.date(2013, 9, 17),
  datetime.date(2013, 9, 16),
  datetime.date(2013, 9, 15)],
 [datetime.date(2013, 9, 14),
  datetime.date(2013, 9, 13),
  datetime.date(2013, 9, 12),
  datetime.date(2013, 9, 11),
  datetime.date(2013, 9, 10),
  datetime.date(2013, 9, 9),
  datetime.date(2013, 9, 8)],
 [datetime.date(2013, 9, 7),
  datetime.date(2013, 9, 6),
  datetime.date(2013, 9, 5),
  datetime.date(2013, 9, 4),
  datetime.date(2013, 9, 3),
  datetime.date(2013, 9, 2),
  datetime.date(2013, 9, 1)],
 [datetime.date(2013, 8, 31),
  datetime.date(2013, 8, 30),
  datetime.date(2013, 8, 29),
  datetime.date(2013, 8, 28),
  datetime.date(2013, 8, 27),
  datetime.date(2013, 8, 26),
  datetime.date(2013, 8, 25)],
 [datetime.date(2013, 8, 24),
  datetime.date(2013, 8, 23),
  datetime.date(2013, 8, 22),
  datetime.date(2013, 8, 21),
  datetime.date(2013, 8, 20),
  datetime.date(2013, 8, 19),
  datetime.date(2013, 8, 18)],
 [datetime.date(2013, 8, 17),
  datetime.date(2013, 8, 16),
  datetime.date(2013, 8, 15),
  datetime.date(2013, 8, 14),
  datetime.date(2013, 8, 13),
  datetime.date(2013, 8, 12),
  datetime.date(2013, 8, 11)],
 [datetime.date(2013, 8, 10),
  datetime.date(2013, 8, 9),
  datetime.date(2013, 8, 8),
  datetime.date(2013, 8, 7),
  datetime.date(2013, 8, 6),
  datetime.date(2013, 8, 5),
  datetime.date(2013, 8, 4)],
 [datetime.date(2013, 8, 3),
  datetime.date(2013, 8, 2),
  datetime.date(2013, 8, 1),
  datetime.date(2013, 7, 31),
  datetime.date(2013, 7, 30),
  datetime.date(2013, 7, 29),
  datetime.date(2013, 7, 28)],
 [datetime.date(2013, 7, 27),
  datetime.date(2013, 7, 26),
  datetime.date(2013, 7, 25),
  datetime.date(2013, 7, 24),
  datetime.date(2013, 7, 23),
  datetime.date(2013, 7, 22),
  datetime.date(2013, 7, 21)],
 [datetime.date(2013, 7, 20),
  datetime.date(2013, 7, 19),
  datetime.date(2013, 7, 18),
  datetime.date(2013, 7, 17),
  datetime.date(2013, 7, 16),
  datetime.date(2013, 7, 15),
  datetime.date(2013, 7, 14)],
 [datetime.date(2013, 7, 13),
  datetime.date(2013, 7, 12),
  datetime.date(2013, 7, 11),
  datetime.date(2013, 7, 10),
  datetime.date(2013, 7, 9),
  datetime.date(2013, 7, 8),
  datetime.date(2013, 7, 7)],
 [datetime.date(2013, 7, 6),
  datetime.date(2013, 7, 5),
  datetime.date(2013, 7, 4),
  datetime.date(2013, 7, 3),
  datetime.date(2013, 7, 2),
  datetime.date(2013, 7, 1),
  datetime.date(2013, 6, 30)],
 [datetime.date(2013, 6, 29),
  datetime.date(2013, 6, 28),
  datetime.date(2013, 6, 27),
  datetime.date(2013, 6, 26),
  datetime.date(2013, 6, 25),
  datetime.date(2013, 6, 24),
  datetime.date(2013, 6, 23)],
 [datetime.date(2013, 6, 22),
  datetime.date(2013, 6, 21),
  datetime.date(2013, 6, 20),
  datetime.date(2013, 6, 19),
  datetime.date(2013, 6, 18),
  datetime.date(2013, 6, 17),
  datetime.date(2013, 6, 16)],
 [datetime.date(2013, 6, 15),
  datetime.date(2013, 6, 14),
  datetime.date(2013, 6, 13),
  datetime.date(2013, 6, 12),
  datetime.date(2013, 6, 11),
  datetime.date(2013, 6, 10),
  datetime.date(2013, 6, 9)],
 [datetime.date(2013, 6, 8),
  datetime.date(2013, 6, 7),
  datetime.date(2013, 6, 6),
  datetime.date(2013, 6, 5),
  datetime.date(2013, 6, 4),
  datetime.date(2013, 6, 3),
  datetime.date(2013, 6, 2)],
 [datetime.date(2013, 6, 1),
  datetime.date(2013, 5, 31),
  datetime.date(2013, 5, 30),
  datetime.date(2013, 5, 29),
  datetime.date(2013, 5, 28),
  datetime.date(2013, 5, 27),
  datetime.date(2013, 5, 26)],
 [datetime.date(2013, 5, 25),
  datetime.date(2013, 5, 24),
  datetime.date(2013, 5, 23),
  datetime.date(2013, 5, 22),
  datetime.date(2013, 5, 21),
  datetime.date(2013, 5, 20),
  datetime.date(2013, 5, 19)],
 [datetime.date(2013, 5, 18),
  datetime.date(2013, 5, 17),
  datetime.date(2013, 5, 16),
  datetime.date(2013, 5, 15),
  datetime.date(2013, 5, 14),
  datetime.date(2013, 5, 13),
  datetime.date(2013, 5, 12)],
 [datetime.date(2013, 5, 11),
  datetime.date(2013, 5, 10),
  datetime.date(2013, 5, 9),
  datetime.date(2013, 5, 8),
  datetime.date(2013, 5, 7),
  datetime.date(2013, 5, 6),
  datetime.date(2013, 5, 5)],
 [datetime.date(2013, 5, 4),
  datetime.date(2013, 5, 3),
  datetime.date(2013, 5, 2),
  datetime.date(2013, 5, 1),
  datetime.date(2013, 4, 30),
  datetime.date(2013, 4, 29),
  datetime.date(2013, 4, 28)],
 [datetime.date(2013, 4, 27),
  datetime.date(2013, 4, 26),
  datetime.date(2013, 4, 25),
  datetime.date(2013, 4, 24),
  datetime.date(2013, 4, 23),
  datetime.date(2013, 4, 22),
  datetime.date(2013, 4, 21)],
 [datetime.date(2013, 4, 20),
  datetime.date(2013, 4, 19),
  datetime.date(2013, 4, 18),
  datetime.date(2013, 4, 17),
  datetime.date(2013, 4, 16),
  datetime.date(2013, 4, 15),
  datetime.date(2013, 4, 14)],
 [datetime.date(2013, 4, 13),
  datetime.date(2013, 4, 12),
  datetime.date(2013, 4, 11),
  datetime.date(2013, 4, 10),
  datetime.date(2013, 4, 9),
  datetime.date(2013, 4, 8),
  datetime.date(2013, 4, 7)],
 [datetime.date(2013, 4, 6),
  datetime.date(2013, 4, 5),
  datetime.date(2013, 4, 4),
  datetime.date(2013, 4, 3),
  datetime.date(2013, 4, 2),
  datetime.date(2013, 4, 1),
  datetime.date(2013, 3, 31)],
 [datetime.date(2013, 3, 30),
  datetime.date(2013, 3, 29),
  datetime.date(2013, 3, 28),
  datetime.date(2013, 3, 27),
  datetime.date(2013, 3, 26),
  datetime.date(2013, 3, 25),
  datetime.date(2013, 3, 24)],
 [datetime.date(2013, 3, 23),
  datetime.date(2013, 3, 22),
  datetime.date(2013, 3, 21),
  datetime.date(2013, 3, 20),
  datetime.date(2013, 3, 19),
  datetime.date(2013, 3, 18),
  datetime.date(2013, 3, 17)],
 [datetime.date(2013, 3, 16),
  datetime.date(2013, 3, 15),
  datetime.date(2013, 3, 14),
  datetime.date(2013, 3, 13),
  datetime.date(2013, 3, 12),
  datetime.date(2013, 3, 11),
  datetime.date(2013, 3, 10)],
 [datetime.date(2013, 3, 9),
  datetime.date(2013, 3, 8),
  datetime.date(2013, 3, 7),
  datetime.date(2013, 3, 6),
  datetime.date(2013, 3, 5),
  datetime.date(2013, 3, 4),
  datetime.date(2013, 3, 3)],
 [datetime.date(2013, 3, 2),
  datetime.date(2013, 3, 1),
  datetime.date(2013, 2, 28),
  datetime.date(2013, 2, 27),
  datetime.date(2013, 2, 26),
  datetime.date(2013, 2, 25),
  datetime.date(2013, 2, 24)],
 [datetime.date(2013, 2, 23),
  datetime.date(2013, 2, 22),
  datetime.date(2013, 2, 21),
  datetime.date(2013, 2, 20),
  datetime.date(2013, 2, 19),
  datetime.date(2013, 2, 18),
  datetime.date(2013, 2, 17)],
 [datetime.date(2013, 2, 16),
  datetime.date(2013, 2, 15),
  datetime.date(2013, 2, 14),
  datetime.date(2013, 2, 13),
  datetime.date(2013, 2, 12),
  datetime.date(2013, 2, 11),
  datetime.date(2013, 2, 10)],
 [datetime.date(2013, 2, 9),
  datetime.date(2013, 2, 8),
  datetime.date(2013, 2, 7),
  datetime.date(2013, 2, 6),
  datetime.date(2013, 2, 5),
  datetime.date(2013, 2, 4),
  datetime.date(2013, 2, 3)],
 [datetime.date(2013, 2, 2),
  datetime.date(2013, 2, 1),
  datetime.date(2013, 1, 31),
  datetime.date(2013, 1, 30),
  datetime.date(2013, 1, 29),
  datetime.date(2013, 1, 28),
  datetime.date(2013, 1, 27)],
 [datetime.date(2013, 1, 26),
  datetime.date(2013, 1, 25),
  datetime.date(2013, 1, 24),
  datetime.date(2013, 1, 23),
  datetime.date(2013, 1, 22),
  datetime.date(2013, 1, 21),
  datetime.date(2013, 1, 20)],
 [datetime.date(2013, 1, 19)]]

In [169]:
CHARMAP = {
  'H':['10010', '10010', '11110', '10010', '10010' ],
  'E':['11100', '10000', '11000', '10000', '11100'],
  'L':['10000', '10000', '10000', '10000', '11110' ],
  'O':['11110', '10010', '10010', '10010', '11110'],
  'R':['11100', '10010', '11100', '10010', '10010'],
  'D':['11100', '10010', '10010', '10010', '11100' ],
  ' ':['0000',  '0000',  '0000',  '0000',  '0000' ],
  'W':['100010', '100010', '100010', '101010', '010100'],
}

def convert_text(text):
  nrows = len(''.join( CHARMAP[c.upper()][0] for c in text ) )
  print nrows
  
  out = []
  yoffset = 1
  xoffset = 2
  rows = get_dates(nrows+xoffset)
  j = len(rows)-1-xoffset
  for k,c in enumerate(text):
    for r in zip(*CHARMAP[c.upper()]):
      for ii,y in enumerate(r,yoffset):
        i = 6-ii
        rows[j][0] = None
        rows[j][-1] = None
        if y == '0':
          rows[j][i] = None
        if y == '1':
          out.append(rows[j][i])
      j -= 1
    
    # if k < len(text)-1:
    #   for i in range(7):
    #     rows[j][i] = None
    #   j -= 1
#     pprint(rows)
  # return rows
  return rows, out

rows2, out = convert_text('HELLO WORLD')


55

In [170]:
pprint(rows2)


[[None, None, None, None, None, None, None],
 [None,
  None,
  datetime.date(2014, 1, 16),
  datetime.date(2014, 1, 15),
  datetime.date(2014, 1, 14),
  None,
  None],
 [None,
  datetime.date(2014, 1, 10),
  None,
  None,
  None,
  datetime.date(2014, 1, 6),
  None],
 [None,
  datetime.date(2014, 1, 3),
  None,
  None,
  None,
  datetime.date(2013, 12, 30),
  None],
 [None,
  datetime.date(2013, 12, 27),
  datetime.date(2013, 12, 26),
  datetime.date(2013, 12, 25),
  datetime.date(2013, 12, 24),
  datetime.date(2013, 12, 23),
  None],
 [None, None, None, None, None, None, None],
 [None, datetime.date(2013, 12, 13), None, None, None, None, None],
 [None, datetime.date(2013, 12, 6), None, None, None, None, None],
 [None, datetime.date(2013, 11, 29), None, None, None, None, None],
 [None,
  datetime.date(2013, 11, 22),
  datetime.date(2013, 11, 21),
  datetime.date(2013, 11, 20),
  datetime.date(2013, 11, 19),
  datetime.date(2013, 11, 18),
  None],
 [None, None, None, None, None, None, None],
 [None,
  datetime.date(2013, 11, 8),
  datetime.date(2013, 11, 7),
  None,
  datetime.date(2013, 11, 5),
  None,
  None],
 [None,
  None,
  None,
  datetime.date(2013, 10, 30),
  None,
  datetime.date(2013, 10, 28),
  None],
 [None,
  None,
  None,
  datetime.date(2013, 10, 23),
  None,
  datetime.date(2013, 10, 21),
  None],
 [None,
  datetime.date(2013, 10, 18),
  datetime.date(2013, 10, 17),
  datetime.date(2013, 10, 16),
  datetime.date(2013, 10, 15),
  datetime.date(2013, 10, 14),
  None],
 [None, None, None, None, None, None, None],
 [None,
  datetime.date(2013, 10, 4),
  datetime.date(2013, 10, 3),
  datetime.date(2013, 10, 2),
  datetime.date(2013, 10, 1),
  datetime.date(2013, 9, 30),
  None],
 [None,
  datetime.date(2013, 9, 27),
  None,
  None,
  None,
  datetime.date(2013, 9, 23),
  None],
 [None,
  datetime.date(2013, 9, 20),
  None,
  None,
  None,
  datetime.date(2013, 9, 16),
  None],
 [None,
  datetime.date(2013, 9, 13),
  datetime.date(2013, 9, 12),
  datetime.date(2013, 9, 11),
  datetime.date(2013, 9, 10),
  datetime.date(2013, 9, 9),
  None],
 [None, None, None, None, None, None, None],
 [None,
  None,
  datetime.date(2013, 8, 29),
  datetime.date(2013, 8, 28),
  datetime.date(2013, 8, 27),
  datetime.date(2013, 8, 26),
  None],
 [None, datetime.date(2013, 8, 23), None, None, None, None, None],
 [None, None, datetime.date(2013, 8, 15), None, None, None, None],
 [None, datetime.date(2013, 8, 9), None, None, None, None, None],
 [None,
  None,
  datetime.date(2013, 8, 1),
  datetime.date(2013, 7, 31),
  datetime.date(2013, 7, 30),
  datetime.date(2013, 7, 29),
  None],
 [None, None, None, None, None, None, None],
 [None, None, None, None, None, None, None],
 [None, None, None, None, None, None, None],
 [None, None, None, None, None, None, None],
 [None, None, None, None, None, None, None],
 [None,
  datetime.date(2013, 6, 21),
  datetime.date(2013, 6, 20),
  datetime.date(2013, 6, 19),
  datetime.date(2013, 6, 18),
  datetime.date(2013, 6, 17),
  None],
 [None,
  datetime.date(2013, 6, 14),
  None,
  None,
  None,
  datetime.date(2013, 6, 10),
  None],
 [None,
  datetime.date(2013, 6, 7),
  None,
  None,
  None,
  datetime.date(2013, 6, 3),
  None],
 [None,
  datetime.date(2013, 5, 31),
  datetime.date(2013, 5, 30),
  datetime.date(2013, 5, 29),
  datetime.date(2013, 5, 28),
  datetime.date(2013, 5, 27),
  None],
 [None, None, None, None, None, None, None],
 [None, datetime.date(2013, 5, 17), None, None, None, None, None],
 [None, datetime.date(2013, 5, 10), None, None, None, None, None],
 [None, datetime.date(2013, 5, 3), None, None, None, None, None],
 [None,
  datetime.date(2013, 4, 26),
  datetime.date(2013, 4, 25),
  datetime.date(2013, 4, 24),
  datetime.date(2013, 4, 23),
  datetime.date(2013, 4, 22),
  None],
 [None, None, None, None, None, None, None],
 [None, datetime.date(2013, 4, 12), None, None, None, None, None],
 [None, datetime.date(2013, 4, 5), None, None, None, None, None],
 [None, datetime.date(2013, 3, 29), None, None, None, None, None],
 [None,
  datetime.date(2013, 3, 22),
  datetime.date(2013, 3, 21),
  datetime.date(2013, 3, 20),
  datetime.date(2013, 3, 19),
  datetime.date(2013, 3, 18),
  None],
 [None, None, None, None, None, None, None],
 [None, None, None, None, None, None, None],
 [None,
  datetime.date(2013, 3, 1),
  None,
  None,
  None,
  datetime.date(2013, 2, 25),
  None],
 [None,
  datetime.date(2013, 2, 22),
  None,
  datetime.date(2013, 2, 20),
  None,
  datetime.date(2013, 2, 18),
  None],
 [None,
  datetime.date(2013, 2, 15),
  datetime.date(2013, 2, 14),
  datetime.date(2013, 2, 13),
  datetime.date(2013, 2, 12),
  datetime.date(2013, 2, 11),
  None],
 [None, None, None, None, None, None, None],
 [None,
  datetime.date(2013, 2, 1),
  datetime.date(2013, 1, 31),
  datetime.date(2013, 1, 30),
  datetime.date(2013, 1, 29),
  datetime.date(2013, 1, 28),
  None],
 [None, None, None, datetime.date(2013, 1, 23), None, None, None],
 [None, None, None, datetime.date(2013, 1, 16), None, None, None],
 [None,
  datetime.date(2013, 1, 11),
  datetime.date(2013, 1, 10),
  datetime.date(2013, 1, 9),
  datetime.date(2013, 1, 8),
  datetime.date(2013, 1, 7),
  None],
 [datetime.date(2013, 1, 5),
  datetime.date(2013, 1, 4),
  datetime.date(2013, 1, 3),
  datetime.date(2013, 1, 2),
  datetime.date(2013, 1, 1),
  datetime.date(2012, 12, 31),
  datetime.date(2012, 12, 30)],
 [datetime.date(2012, 12, 29)]]

In [165]:
rows


Out[165]:
[[datetime.date(2014, 1, 25),
  datetime.date(2014, 1, 24),
  datetime.date(2014, 1, 23),
  datetime.date(2014, 1, 22),
  datetime.date(2014, 1, 21),
  datetime.date(2014, 1, 20),
  datetime.date(2014, 1, 19)],
 [datetime.date(2014, 1, 18),
  datetime.date(2014, 1, 17),
  datetime.date(2014, 1, 16),
  datetime.date(2014, 1, 15),
  datetime.date(2014, 1, 14),
  datetime.date(2014, 1, 13),
  datetime.date(2014, 1, 12)],
 [datetime.date(2014, 1, 11),
  datetime.date(2014, 1, 10),
  datetime.date(2014, 1, 9),
  datetime.date(2014, 1, 8),
  datetime.date(2014, 1, 7),
  datetime.date(2014, 1, 6),
  datetime.date(2014, 1, 5)],
 [datetime.date(2014, 1, 4),
  datetime.date(2014, 1, 3),
  datetime.date(2014, 1, 2),
  datetime.date(2014, 1, 1),
  datetime.date(2013, 12, 31),
  datetime.date(2013, 12, 30),
  datetime.date(2013, 12, 29)],
 [datetime.date(2013, 12, 28),
  datetime.date(2013, 12, 27),
  datetime.date(2013, 12, 26),
  datetime.date(2013, 12, 25),
  datetime.date(2013, 12, 24),
  datetime.date(2013, 12, 23),
  datetime.date(2013, 12, 22)],
 [datetime.date(2013, 12, 21),
  datetime.date(2013, 12, 20),
  datetime.date(2013, 12, 19),
  datetime.date(2013, 12, 18),
  datetime.date(2013, 12, 17),
  datetime.date(2013, 12, 16),
  datetime.date(2013, 12, 15)],
 [datetime.date(2013, 12, 14),
  datetime.date(2013, 12, 13),
  datetime.date(2013, 12, 12),
  datetime.date(2013, 12, 11),
  datetime.date(2013, 12, 10),
  datetime.date(2013, 12, 9),
  datetime.date(2013, 12, 8)],
 [datetime.date(2013, 12, 7),
  datetime.date(2013, 12, 6),
  datetime.date(2013, 12, 5),
  datetime.date(2013, 12, 4),
  datetime.date(2013, 12, 3),
  datetime.date(2013, 12, 2),
  datetime.date(2013, 12, 1)],
 [datetime.date(2013, 11, 30),
  datetime.date(2013, 11, 29),
  datetime.date(2013, 11, 28),
  datetime.date(2013, 11, 27),
  datetime.date(2013, 11, 26),
  datetime.date(2013, 11, 25),
  datetime.date(2013, 11, 24)],
 [datetime.date(2013, 11, 23),
  datetime.date(2013, 11, 22),
  datetime.date(2013, 11, 21),
  datetime.date(2013, 11, 20),
  datetime.date(2013, 11, 19),
  datetime.date(2013, 11, 18),
  datetime.date(2013, 11, 17)],
 [datetime.date(2013, 11, 16),
  datetime.date(2013, 11, 15),
  datetime.date(2013, 11, 14),
  datetime.date(2013, 11, 13),
  datetime.date(2013, 11, 12),
  datetime.date(2013, 11, 11),
  datetime.date(2013, 11, 10)],
 [datetime.date(2013, 11, 9),
  datetime.date(2013, 11, 8),
  datetime.date(2013, 11, 7),
  datetime.date(2013, 11, 6),
  datetime.date(2013, 11, 5),
  datetime.date(2013, 11, 4),
  datetime.date(2013, 11, 3)],
 [datetime.date(2013, 11, 2),
  datetime.date(2013, 11, 1),
  datetime.date(2013, 10, 31),
  datetime.date(2013, 10, 30),
  datetime.date(2013, 10, 29),
  datetime.date(2013, 10, 28),
  datetime.date(2013, 10, 27)],
 [datetime.date(2013, 11, 2),
  datetime.date(2013, 11, 1),
  datetime.date(2013, 10, 31),
  datetime.date(2013, 10, 30),
  datetime.date(2013, 10, 29),
  datetime.date(2013, 10, 28),
  datetime.date(2013, 10, 27)],
 [datetime.date(2013, 10, 26),
  datetime.date(2013, 10, 25),
  datetime.date(2013, 10, 24),
  datetime.date(2013, 10, 23),
  datetime.date(2013, 10, 22),
  datetime.date(2013, 10, 21),
  datetime.date(2013, 10, 20)],
 [datetime.date(2013, 10, 19),
  datetime.date(2013, 10, 18),
  datetime.date(2013, 10, 17),
  datetime.date(2013, 10, 16),
  datetime.date(2013, 10, 15),
  datetime.date(2013, 10, 14),
  datetime.date(2013, 10, 13)],
 [datetime.date(2013, 10, 12),
  datetime.date(2013, 10, 11),
  datetime.date(2013, 10, 10),
  datetime.date(2013, 10, 9),
  datetime.date(2013, 10, 8),
  datetime.date(2013, 10, 7),
  datetime.date(2013, 10, 6)],
 [datetime.date(2013, 10, 5),
  datetime.date(2013, 10, 4),
  datetime.date(2013, 10, 3),
  datetime.date(2013, 10, 2),
  datetime.date(2013, 10, 1),
  datetime.date(2013, 9, 30),
  datetime.date(2013, 9, 29)],
 [datetime.date(2013, 10, 5),
  datetime.date(2013, 10, 4),
  datetime.date(2013, 10, 3),
  datetime.date(2013, 10, 2),
  datetime.date(2013, 10, 1),
  datetime.date(2013, 9, 30),
  datetime.date(2013, 9, 29)],
 [datetime.date(2013, 9, 28),
  datetime.date(2013, 9, 27),
  datetime.date(2013, 9, 26),
  datetime.date(2013, 9, 25),
  datetime.date(2013, 9, 24),
  datetime.date(2013, 9, 23),
  datetime.date(2013, 9, 22)],
 [datetime.date(2013, 9, 21),
  datetime.date(2013, 9, 20),
  datetime.date(2013, 9, 19),
  datetime.date(2013, 9, 18),
  datetime.date(2013, 9, 17),
  datetime.date(2013, 9, 16),
  datetime.date(2013, 9, 15)],
 [datetime.date(2013, 9, 14),
  datetime.date(2013, 9, 13),
  datetime.date(2013, 9, 12),
  datetime.date(2013, 9, 11),
  datetime.date(2013, 9, 10),
  datetime.date(2013, 9, 9),
  datetime.date(2013, 9, 8)],
 [datetime.date(2013, 9, 7),
  datetime.date(2013, 9, 6),
  datetime.date(2013, 9, 5),
  datetime.date(2013, 9, 4),
  datetime.date(2013, 9, 3),
  datetime.date(2013, 9, 2),
  datetime.date(2013, 9, 1)],
 [datetime.date(2013, 8, 31),
  datetime.date(2013, 8, 30),
  datetime.date(2013, 8, 29),
  datetime.date(2013, 8, 28),
  datetime.date(2013, 8, 27),
  datetime.date(2013, 8, 26),
  datetime.date(2013, 8, 25)],
 [datetime.date(2013, 8, 24),
  datetime.date(2013, 8, 23),
  datetime.date(2013, 8, 22),
  datetime.date(2013, 8, 21),
  datetime.date(2013, 8, 20),
  datetime.date(2013, 8, 19),
  datetime.date(2013, 8, 18)],
 [datetime.date(2013, 8, 17),
  datetime.date(2013, 8, 16),
  datetime.date(2013, 8, 15),
  datetime.date(2013, 8, 14),
  datetime.date(2013, 8, 13),
  datetime.date(2013, 8, 12),
  datetime.date(2013, 8, 11)],
 [datetime.date(2013, 8, 10),
  datetime.date(2013, 8, 9),
  datetime.date(2013, 8, 8),
  datetime.date(2013, 8, 7),
  datetime.date(2013, 8, 6),
  datetime.date(2013, 8, 5),
  datetime.date(2013, 8, 4)],
 [datetime.date(2013, 8, 3),
  datetime.date(2013, 8, 2),
  datetime.date(2013, 8, 1),
  datetime.date(2013, 7, 31),
  datetime.date(2013, 7, 30),
  datetime.date(2013, 7, 29),
  datetime.date(2013, 7, 28)],
 [datetime.date(2013, 8, 3),
  datetime.date(2013, 8, 2),
  datetime.date(2013, 8, 1),
  datetime.date(2013, 7, 31),
  datetime.date(2013, 7, 30),
  datetime.date(2013, 7, 29),
  datetime.date(2013, 7, 28)],
 [datetime.date(2013, 7, 27),
  datetime.date(2013, 7, 26),
  datetime.date(2013, 7, 25),
  datetime.date(2013, 7, 24),
  datetime.date(2013, 7, 23),
  datetime.date(2013, 7, 22),
  datetime.date(2013, 7, 21)],
 [datetime.date(2013, 7, 20),
  datetime.date(2013, 7, 19),
  datetime.date(2013, 7, 18),
  datetime.date(2013, 7, 17),
  datetime.date(2013, 7, 16),
  datetime.date(2013, 7, 15),
  datetime.date(2013, 7, 14)],
 [datetime.date(2013, 7, 13),
  datetime.date(2013, 7, 12),
  datetime.date(2013, 7, 11),
  datetime.date(2013, 7, 10),
  datetime.date(2013, 7, 9),
  datetime.date(2013, 7, 8),
  datetime.date(2013, 7, 7)],
 [datetime.date(2013, 7, 6),
  datetime.date(2013, 7, 5),
  datetime.date(2013, 7, 4),
  datetime.date(2013, 7, 3),
  datetime.date(2013, 7, 2),
  datetime.date(2013, 7, 1),
  datetime.date(2013, 6, 30)],
 [datetime.date(2013, 7, 6),
  datetime.date(2013, 7, 5),
  datetime.date(2013, 7, 4),
  datetime.date(2013, 7, 3),
  datetime.date(2013, 7, 2),
  datetime.date(2013, 7, 1),
  datetime.date(2013, 6, 30)],
 [datetime.date(2013, 6, 29),
  datetime.date(2013, 6, 28),
  datetime.date(2013, 6, 27),
  datetime.date(2013, 6, 26),
  datetime.date(2013, 6, 25),
  datetime.date(2013, 6, 24),
  datetime.date(2013, 6, 23)],
 [datetime.date(2013, 6, 22),
  datetime.date(2013, 6, 21),
  datetime.date(2013, 6, 20),
  datetime.date(2013, 6, 19),
  datetime.date(2013, 6, 18),
  datetime.date(2013, 6, 17),
  datetime.date(2013, 6, 16)],
 [datetime.date(2013, 6, 15),
  datetime.date(2013, 6, 14),
  datetime.date(2013, 6, 13),
  datetime.date(2013, 6, 12),
  datetime.date(2013, 6, 11),
  datetime.date(2013, 6, 10),
  datetime.date(2013, 6, 9)],
 [datetime.date(2013, 6, 8),
  datetime.date(2013, 6, 7),
  datetime.date(2013, 6, 6),
  datetime.date(2013, 6, 5),
  datetime.date(2013, 6, 4),
  datetime.date(2013, 6, 3),
  datetime.date(2013, 6, 2)],
 [datetime.date(2013, 6, 1),
  datetime.date(2013, 5, 31),
  datetime.date(2013, 5, 30),
  datetime.date(2013, 5, 29),
  datetime.date(2013, 5, 28),
  datetime.date(2013, 5, 27),
  datetime.date(2013, 5, 26)],
 [datetime.date(2013, 6, 1),
  datetime.date(2013, 5, 31),
  datetime.date(2013, 5, 30),
  datetime.date(2013, 5, 29),
  datetime.date(2013, 5, 28),
  datetime.date(2013, 5, 27),
  datetime.date(2013, 5, 26)],
 [datetime.date(2013, 5, 25),
  datetime.date(2013, 5, 24),
  datetime.date(2013, 5, 23),
  datetime.date(2013, 5, 22),
  datetime.date(2013, 5, 21),
  datetime.date(2013, 5, 20),
  datetime.date(2013, 5, 19)],
 [datetime.date(2013, 5, 18),
  datetime.date(2013, 5, 17),
  datetime.date(2013, 5, 16),
  datetime.date(2013, 5, 15),
  datetime.date(2013, 5, 14),
  datetime.date(2013, 5, 13),
  datetime.date(2013, 5, 12)],
 [datetime.date(2013, 5, 11),
  datetime.date(2013, 5, 10),
  datetime.date(2013, 5, 9),
  datetime.date(2013, 5, 8),
  datetime.date(2013, 5, 7),
  datetime.date(2013, 5, 6),
  datetime.date(2013, 5, 5)],
 [datetime.date(2013, 5, 4),
  datetime.date(2013, 5, 3),
  datetime.date(2013, 5, 2),
  datetime.date(2013, 5, 1),
  datetime.date(2013, 4, 30),
  datetime.date(2013, 4, 29),
  datetime.date(2013, 4, 28)],
 [datetime.date(2013, 5, 4),
  datetime.date(2013, 5, 3),
  datetime.date(2013, 5, 2),
  datetime.date(2013, 5, 1),
  datetime.date(2013, 4, 30),
  datetime.date(2013, 4, 29),
  datetime.date(2013, 4, 28)],
 [datetime.date(2013, 4, 27),
  datetime.date(2013, 4, 26),
  datetime.date(2013, 4, 25),
  datetime.date(2013, 4, 24),
  datetime.date(2013, 4, 23),
  datetime.date(2013, 4, 22),
  datetime.date(2013, 4, 21)],
 [datetime.date(2013, 4, 20),
  datetime.date(2013, 4, 19),
  datetime.date(2013, 4, 18),
  datetime.date(2013, 4, 17),
  datetime.date(2013, 4, 16),
  datetime.date(2013, 4, 15),
  datetime.date(2013, 4, 14)],
 [datetime.date(2013, 4, 13),
  datetime.date(2013, 4, 12),
  datetime.date(2013, 4, 11),
  datetime.date(2013, 4, 10),
  datetime.date(2013, 4, 9),
  datetime.date(2013, 4, 8),
  datetime.date(2013, 4, 7)],
 [datetime.date(2013, 4, 6),
  datetime.date(2013, 4, 5),
  datetime.date(2013, 4, 4),
  datetime.date(2013, 4, 3),
  datetime.date(2013, 4, 2),
  datetime.date(2013, 4, 1),
  datetime.date(2013, 3, 31)],
 [datetime.date(2013, 4, 6),
  datetime.date(2013, 4, 5),
  datetime.date(2013, 4, 4),
  datetime.date(2013, 4, 3),
  datetime.date(2013, 4, 2),
  datetime.date(2013, 4, 1),
  datetime.date(2013, 3, 31)],
 [datetime.date(2013, 3, 30),
  datetime.date(2013, 3, 29),
  datetime.date(2013, 3, 28),
  datetime.date(2013, 3, 27),
  datetime.date(2013, 3, 26),
  datetime.date(2013, 3, 25),
  datetime.date(2013, 3, 24)],
 [datetime.date(2013, 3, 23),
  datetime.date(2013, 3, 22),
  datetime.date(2013, 3, 21),
  datetime.date(2013, 3, 20),
  datetime.date(2013, 3, 19),
  datetime.date(2013, 3, 18),
  datetime.date(2013, 3, 17)],
 [datetime.date(2013, 3, 16),
  datetime.date(2013, 3, 15),
  datetime.date(2013, 3, 14),
  datetime.date(2013, 3, 13),
  datetime.date(2013, 3, 12),
  datetime.date(2013, 3, 11),
  datetime.date(2013, 3, 10)],
 [datetime.date(2013, 3, 9),
  datetime.date(2013, 3, 8),
  datetime.date(2013, 3, 7),
  datetime.date(2013, 3, 6),
  datetime.date(2013, 3, 5),
  datetime.date(2013, 3, 4),
  datetime.date(2013, 3, 3)],
 [datetime.date(2013, 3, 2)]]

In [ ]: