def offset(offset, base):
    """Applies an offset in days to a base date.
        If the offset is already a date it is returned as is."""
if type(offset) == datetime.date:
    return offset
return base + datetime.timedelta(offset)

def offset_keys(dct, base):
    """Takes a dict and runs offset(key, base) on all keys"""
return {offset(k, base): v for k, v in list(dct.items())}
pprint(offset_keys(dct, datetime.date(2015, 7, 12)))
Change multiple keys from dictionary, while doing timedelta operation in Python