The end value for a range is not included, so the range from 2 to 2 doesn't include any values. You then create a range from 2 to 3, which only includes the value 2, etc.
As such, you are producing loops that'll loop n - 2 times, where n loops from 2 to 9 inclusive, and each inner loop loops from 2 to n - 1, inclusive.
For each nested loop, you are printing n again, which doesn't change in the inner loop. Try printing x instead, or better still, print it together:
for n in range(2, 10):
print "This is %d" % n
for x in range(2, n):
print "n=%d, x=%d" % (n, x)
For each n this'll print the values for x from 2 to n - 1, inclusive:
>>> for n in range(2, 10):
... print "This is %d" % n
... for x in range(2, n):
... print "n=%d, x=%d" % (n, x)
...
This is 2
This is 3
n=3, x=2
This is 4
n=4, x=2
n=4, x=3
This is 5
n=5, x=2
n=5, x=3
n=5, x=4
This is 6
n=6, x=2
n=6, x=3
n=6, x=4
n=6, x=5
This is 7
n=7, x=2
n=7, x=3
n=7, x=4
n=7, x=5
n=7, x=6
This is 8
n=8, x=2
n=8, x=3
n=8, x=4
n=8, x=5
n=8, x=6
n=8, x=7
This is 9
n=9, x=2
n=9, x=3
n=9, x=4
n=9, x=5
n=9, x=6
n=9, x=7
n=9, x=8