---- Original Message ---- From: Steve Willoughby <[EMAIL PROTECTED]> To: Dragos Ionescu <[EMAIL PROTECTED]> Cc: bob gailer <[EMAIL PROTECTED]>; David <[EMAIL PROTECTED]>; tutor@python.org Sent: Saturday, October 4, 2008 11:04:30 PM Subject: Re: [Tutor] bug in exam score conversion program
Dragos Ionescu wrote: > ----- Original Message ---- > From: bob gailer <[EMAIL PROTECTED]> > To: David <[EMAIL PROTECTED]> > Cc: tutor@python.org > Sent: Saturday, October 4, 2008 10:15:10 PM > Subject: Re: [Tutor] bug in exam score conversion program > > Lots of good responses. And now for something completely different: > > import string > x = string.maketrans('567891', 'FDCBAA') > score = raw_input('score>') > print "Your grade is:", score[0].translate(x) > -- > Bob Gailer > Chapel Hill NC > 919-636-4239 > > When we take the time to be aware of our feelings and > needs we have more satisfying interatctions with others.. > > Nonviolent Communication provides tools for this awareness. > > As a coach and trainer I can assist you in learning this process. > > What is YOUR biggest relationship challenge? > > _______________________________________________ > Tutor maillist - Tutor@python.org <mailto:Tutor@python.org> > http://mail.python.org/mailman/listinfo/tutor > > > Wow! Bob Gailer's solution is so elegant. Can someone plese explain what > is the algorithm behind string.maketrans. More exactly, how is this > function doing the coding? Actually, I don't think the point was to be elegant as much as to get you thinking about something you might not have explored--never hurts to keep learning new features so you don't inefficiently apply the same old small set of things to new problems. You wouldn't *really* want to implement a production grade system like that, cute though it is. This is setting up a translation table mapping the first character in the score to a letter grade. So a 9 is changed to an A. The obvious problem though is how it handles a score of, say, "1". Or, for that matter, "37". I know how string.maketrans works. I was wondering how to implement such a function. Would that be very hard? I must admit that I was 'surprised' when I printed x... Thanks, Dragos http://scripts.mit.edu/~dionescu/pyworld
_______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor