To print the above data in the table, I would suggest a simple loop with a string:
print "\t".join(['year', 'data', 'Jan', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL', 'AUG', 'SEP', 'OCT', 'NOV', 'DEZ']) theYearOffset = 1850 for theYearCounter in range(len(data1_yearly)): print "%s\t%s\t%s\n\t%s\t%s" % ((theYearOffset + theYearCounter), 'data1', "\t".join(["%.2f" % theValue for theValue in data1_yearly[theYearCounter]]), 'data2', "\t".join(["%.2f" % theValue for theValue in data2_yearly[theYearCounter]])) 'year', 'data', 'Jan', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL', 'AUG', ' print "\t".join(['year', 'data', 'Jan', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL', 'AUG', 'SEP', 'OCT', 'NOV', 'DEZ']) theYearOffset = 1850 for theYearCounter in range(len(data1_yearly)): print "%s\t%s\t%s\n\t%s\t%s" % ((theYearOffset + theYearCounter), 'data1', "\t".join(["%.2f" % theValue for theValue in data1_yearly[theYearCounter]]), 'data2', "\t".join(["%.2f" % theValue for theValue in data2_yearly[theYearCounter]])) NOV ',' DEZ ']) print "\t".join(['year', 'data', 'Jan', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL', 'AUG', 'SEP', 'OCT', 'NOV', 'DEZ']) theYearOffset = 1850 for theYearCounter in range(len(data1_yearly)): print "%s\t%s\t%s\n\t%s\t%s" % ((theYearOffset + theYearCounter), 'data1', "\t".join(["%.2f" % theValue for theValue in data1_yearly[theYearCounter]]), 'data2', "\t".join(["%.2f" % theValue for theValue in data2_yearly[theYearCounter]])) )): print "\t".join(['year', 'data', 'Jan', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL', 'AUG', 'SEP', 'OCT', 'NOV', 'DEZ']) theYearOffset = 1850 for theYearCounter in range(len(data1_yearly)): print "%s\t%s\t%s\n\t%s\t%s" % ((theYearOffset + theYearCounter), 'data1', "\t".join(["%.2f" % theValue for theValue in data1_yearly[theYearCounter]]), 'data2', "\t".join(["%.2f" % theValue for theValue in data2_yearly[theYearCounter]])) \ t% s \ n \ t% s \ t% s"% ((theYearOffset + theYearCounter), print "\t".join(['year', 'data', 'Jan', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL', 'AUG', 'SEP', 'OCT', 'NOV', 'DEZ']) theYearOffset = 1850 for theYearCounter in range(len(data1_yearly)): print "%s\t%s\t%s\n\t%s\t%s" % ((theYearOffset + theYearCounter), 'data1', "\t".join(["%.2f" % theValue for theValue in data1_yearly[theYearCounter]]), 'data2', "\t".join(["%.2f" % theValue for theValue in data2_yearly[theYearCounter]])) .join ([ "%. 2f"% theValue for theValue in data1_yearly [theYearCounter]]), print "\t".join(['year', 'data', 'Jan', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL', 'AUG', 'SEP', 'OCT', 'NOV', 'DEZ']) theYearOffset = 1850 for theYearCounter in range(len(data1_yearly)): print "%s\t%s\t%s\n\t%s\t%s" % ((theYearOffset + theYearCounter), 'data1', "\t".join(["%.2f" % theValue for theValue in data1_yearly[theYearCounter]]), 'data2', "\t".join(["%.2f" % theValue for theValue in data2_yearly[theYearCounter]]))
This is not the most beautiful code, but it will do the job. The columns are separated by tabs, and floating point number rounded up to two digits.
Here are the results for some stupid test data:

Test data:
data1 = [1.1233,2,3,4,5,6,7,8,9,10,11,1,2,3,4,5,6,7,8,9,10,11,1,2,3,4,5,6,7,8,9,10,11,1,2,3,4,5,6,7,8,9,10,11] data2 = [8,9,10,11,12,13,14,15,1,2,4,8,9,10,11,12,13,14,15,1,2,4,8,9,10,11,12,13,14,15,1,2,4,8,9,10,11,12,13,14,15,1,2,4]