12 Days of Christmas Code
Here is the code from what we did in class.
verse = {
1: 'a partridge in a pear tree',
2: 'two turtle doves',
3: 'three french hens',
4: 'four calling birds',
5: 'five golden rings',
6: 'six geese a laying',
7: 'seven swans a swimming',
8: 'eight maids a milking',
9: 'nine ladies dancing',
10: 'ten lords a leaping',
11: 'eleven pipers piping',
12: 'twelve drummers drumming'
}
def toOrdinal(day):
if day == 1:
return 'first'
elif day == 2:
return 'second'
elif day == 3:
return 'third'
elif day == 4:
return 'fourth'
elif day == 5:
return 'fifth'
elif day == 6:
return 'sixth'
elif day == 7:
return 'seventh'
elif day == 8:
return 'eighth'
elif day == 9:
return 'ninth'
elif day == 10:
return 'tenth'
elif day == 11:
return 'eleventh'
elif day == 12:
return 'twelfth'
else:
return 'error'
def song(day):
stanza = 'On the ' + toOrdinal(day) + ' day of Christmas,\nmy true love gave to me\n'
for i in range(day,0,-1):
if i == 1:
stanza = stanza + verse[i]
elif i == 2:
stanza += verse[i] + ',\nand '
else:
stanza += verse[i] + ',\n'
return stanza
def main():
for i in range(1,13):
print(song(i))
print()
main()