[Tutor] 2 Very basic queries
Alan Gauld
alan.gauld at btinternet.com
Wed Mar 26 02:26:14 CET 2014
On 25/03/14 19:21, Saad Bashir wrote:
> As per its instructions I am using the IDLE environment (Python shell)
> of Python [3.2.3 MSC v.1500 64 bit AMD64]. I have been going through
> the book without any problems but have become stuck at the following stage:
>
> When using "if" and "elif" statement I get two types of error messages:
>
> 1. Practicing the code as given in the book:
>
> >>> ph = float(input('Enter the pH level: '))
> Enter the pH level: 8.5
> >>> if ph < 7.0:
> ... print(ph, "is acidic.")
> ... elif ph > 7.0:
> ... print(ph, "is basic.")
>
> When I write this in the Python shell, as soon as I hit return after
> "elif ph > 7.0:"
> I get an error message highlighting "elif" and saying syntax error.
>
> Or if I try the indentation as follows with elif aligned if above I get
> the message below:
>
> >>> ph = float(input('Enter the pH level: '))
> Enter the pH level: 8.5
> >>> if ph < 7.0:
> ... print(ph, "is acidic.")
> ... elif ph > 7.0:
> ... print(ph, "is basic.")
>
> "SyntaxError: : unindent does not match any outer indentation level.
>
Do you actually get the three dots in your IDLE? I don't in mine...
And thats important because in my IDLE I have to align my indentation
with the left margin rather than the code above.
So your code would look like:
>>> if ph < 7.0:
print(ph, "is acidic.")
elif ph > 7.0:
print(ph, "is basic.")
in my IDLE.
That's pretty ugly and I wish the IDLE guys would fix it but
it's been that way for a long time.
Basically you have to pretend the first line started on
the left margin...
--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/
http://www.flickr.com/photos/alangauldphotos
More information about the Tutor
mailing list