nookasree ponamala wrote:
Hi,
I'm new to Python programming. I've changed the code to below, but still it is 
not working, Could you pls. make the corrections in my code.

If you are to be a programmer, you need to learn how to read the error messages you get. You probably would have seen an error something like this:

>>> if True:
... pass
  File "<stdin>", line 2
    pass
       ^
IndentationError: expected an indented block

or like this:

>>> while True:
...     pass
...             if True:
  File "<stdin>", line 3
    if True:
    ^
IndentationError: unexpected indent



This will tell you *exactly* what is wrong: you haven't indented the if block (see below), or possibly indented the wrong part. I'm not sure which, because you seem to have mixed spaces and tabs, or possibly my mail client Thunderbird is messing about with the indentation.

In general, never ever mix spaces and tabs for indentation! Even when Python allows it, it becomes hard to maintain and harder to email it.

If this is not your error, then please COPY and PASTE the FULL error you receive, do not retype it or summarize it in any way.



import datetime
t = ()
tot = []
min = datetime.date(2008, 1, 1)
max = datetime.date(2012, 12, 31)
for line in open ('test2.txt','r'):
        data = line.rstrip().split()
        a = data[9]
        b = data[4]
        (year, month, day) = b.split('-')
        year = int(year)
        month = int(month)
        day = int(day)
        t = (year,month,day)
                if t < max:

This is wrong. The if statement should be indented equally to the line above it. Only the if *block* should be indented further:

if condition:  # do not indent
    # indent this block
    do_something()
elif another_condition:  # outdent
    # indent this block
    do_something_else()
    and_more()
    even_more()
else:  # outdent
    # and indent the block again
    do_something_else()


                maxyr = max
                if t > min:
                minyr = min

And again here: at *least* one line must be indented after the if statement.

                t = (a,b,maxyr,minyr)
                tot.append(t)
                print t



--
Steven
_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor

Reply via email to