July 10th 2009
I like Python
So I decided to learn Python and Django in the hopes it would be a half way house between PHP and Lisp, letting me actually get stuff done whilst not being PHP.
My first impression of Django has been pretty bad, I bought the ‘definitive guide’ book only to find it was not so much definitive as obsolete. Also the amount of arbitrary seeming magic didn’t impress. Having said that I have passed through that and I’m beginning to get the hang of it.
Python on the other hand was different, to start with I HATED the look of the code compared to Lisp but after a few hours hacking it doesn’t seem that bad. For my first program I decided to solve this little puzzle. This great guide got me going quickly and along with a few small pointers from verte in the friendly seeming #python I came to a solution.
def draw_diamond(letter): alphabet = 'abcdefghijklmnopqrstuvqxyz' size = alphabet.find(letter) for x in range(size) + range(size, -1, -1): line = [' '] * ((2 * size) + 1) line[size + x] = alphabet[x] line[size - x] = alphabet[x] print "".join(line) draw_diamond('d')
It didn’t take long, the code looks nice and most importantly I enjoyed writing it. I’m pretty impressed!