[Tutor] Correct use of range function..

Adam Urbas jped.aru at gmail.com
Sun Jun 10 18:01:29 CEST 2007


I discovered something about your revers word program here.  I used
the "for c in word" one.
if you type an indented print after print c, then it will print the
words vertically.  Just thought I'd share that with you.

On 6/10/07, Kent Johnson <kent37 at tds.net> wrote:
> David Hamilton wrote:
> > I just finished doing an exercise in a tutorial on the range function
> > and while I got it to work, my answer seems ugly. I'm wondering if I'm
> > missing something in the way I'm using the range function.
> > The tutorial ask me to print a string backwards. My solution works, but
> > it it just doesn't "feel" right :).  My result is difficult to read and
> > I feel like I'm probably over complicating the solution. Suggestions?
> >
> > word="reverse"
> > #Start at the end of the string, count back to the start, printing each
> > letter
> > for  i in range(len(word)-1,-1,-1):
> >     print word[i],
>
> That's probably the best you can do using range(). You could write
> ln = len(word)
> for i in range(ln):
>    print word[ln-i-1],
>
> but that is not much different.
>
> You can do better without using range; you can directly iterate the
> letters in reverse:
>
> for c in word[::-1]:
>    print c,
>
> Kent
> _______________________________________________
> Tutor maillist  -  Tutor at python.org
> http://mail.python.org/mailman/listinfo/tutor
>


More information about the Tutor mailing list