On Nov 22, 12:33 pm, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> wrote:
> On 22 Nov, 12:09, Neil Webster <[EMAIL PROTECTED]> wrote:
>
>
>
> > Hi all,
>
> > I'm sure I'm doing something wrong but after lots of searching and
> > reading I can't work it out and was wondering if anybody can help?
>
> > I've got the following block of code:
> >         if a >= 20 and a < 100:
> >                 if c == "c":
> >                         radius = 500
> >                 else:
> >                         radius = 250
> >         elif (a >= 100) and (a < 500):
> >                 radius = 500
> >         elif (a >= 500) and (a < 1000):
> >                 radius = 1000
> >         elif (a >= 1000) and (a < 3000):
> >                 radius = 1500
> >         elif (a >= 3000) and (a < 5000):
> >                 radius = 2000
> >         else:
> >                 radius = 4000
>
> > No matter what value goes in for 'a' the radius always comes out as
> > 4000.
>
> > What am I doing wrong?
>
> > Cheers
>
> > Neil
>
> as Oliver pointed out, check if you're not compairing "a" as a string
>
> I wanted to let you know that you can write the above conditions in a
> more natural way, using the a<x<b idiom
>
> e.g.
>
> x=int(raw_input("write a number"))
> if 5<=x<30:
>     print 'x is between 5 and 30'

Argh, I really dislike raw_input. Though it helps to remind me to use
Try:Except blocks a lot.
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to