Bill Kranec wrote:
Hi Kent,

First off, thank you so much for the suggestions! They have helped clarify some of the concepts I've been struggling with lately ( mostly object - related ones ). I have been teaching myself Python in my spare time for the last few months, and have no previous programming experience, so any feedback I get really helps me improve as a programmer.

I have implemented some of the changes you talked about, and posted an updated version of my program here:

http://rafb.net/paste/results/SicsjJ23.html

I hope this new version is a bit better, and that my answers to your questions help you understand what I'm doing.

OK, some comments on the code.

- I would make checkTeammates() and checkOpponents() return a boolean value rather than raising an exception. Then next() would have code like
if self.checkTeammates( self.flattened ) and self.checkOpponents( self.flattened ):
# add the round to the tournament
else:
# handle a bad round


- You are (ab)using the iterator protocol essentially to implement a while loop. I would rename next() to something like makeTournament() and put the code in a loop like
while len(self.rounds) < 11:
...


You can return the final tournament if you want or just have the output from makeTournament() be the only result.

- Instead of
  stdout.write( str( self.key ) + '\n' )
just use
  print self.key

BTW what is magic about 113400?

Kent



_______________________________________________
Tutor maillist  -  Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor

Reply via email to