I love Python! It's so quick, dirty and informal...
Okay, so you didn't test for a leap year at all in your code. The easiest way to test for divisibility, is to check the modulus. In Python, the modulus operator is '%' (same for most high-level languages, AFAIK). This will return the remainder of operand one divided by operand two. For example. 10%4 = 2 (10/4 = 2 remainder 2).
So you can keep your input statements (although, I'd cast them as int right from the start... and now use the raw_input() funciton, but w/e, keep it). If you want to check all the years between year1 and year2, use a loop! Since we're counting, and we know exactly how far we need to loop, a for loop is the best bet here.
Code:
for year in range(year1,year2+1):
year is our loop counter, year1 is where we start and we want to stop at year2. In interval notation, the domain of the range() function is [a,b), or, "starts at and includes a, and stops at and excludes b." However, we want to include b, so we add 1 (a step of 1 is assumed if none is given).
Awesome, so now year will take on all integer values between year1 and year2 inclusive. Now to check if it is a leap year!
Code:
leap_year = FALSE
if year%400==0: # this is the most restrictive case, so check it
# first
leap_year = TRUE # we have a leap year
elif year%100 !=0: # next check that we're not on a centennial
# year that isn't mod400 (ie 1700)
if year%4 == 0: # check if the year is divisible by 4
leap_year = True # another leap year
That may not be the most elegant way to check, but it gets the job done. If the year is divisible by 400, we have a leap year. If it's not divisible by 400, then we want to check that it's NOT divisible by 100 either (otherwise it's not a leap year, like 1800). A year that isn't divisible by 100, but is divisible by 4 is a leap year.
Then you can throw in a
Code:
print("{0} is a leap year!".format(year))
to make the output all formatted and neat.
And you're done. Sorry about the poor formatting.
EDIT: It has occurred to me that you're not using the latest version of Python, version 3.1. The code I've given is using the 3.1 grammar, so the syntax on the print statement is different than your's. I'm also guessing that's why you've used raw_input() instead of input(). Either way, logic is the same.