You've noticed that the duplication for the case of one thousand variables would be a nuisance, which is good. That suggests that you need to move up one level of abstraction, so that instead of one thousand variables you'd have one list or one dictionary, which can then be looped over.
For example, if it makes sense to count your variables starting from 0, you could use a list:
>>> vv = [10,20,30,40,50]
>>> vv[3]
40
and then use a list comprehension to do the subtraction:
>>> vv = [v-1 for v in vv]
>>> vv
[9, 19, 29, 39, 49]
>>> vv[3]
39
or if it was important that the variables had names, you could use a dictionary:
>>> # first, let's make a test dictionary
>>> from string import ascii_lowercase
>>> d = {k: i for i, k in enumerate(ascii_lowercase[:10])}
>>> d
{'a': 0, 'c': 2, 'b': 1, 'e': 4, 'd': 3, 'g': 6, 'f': 5, 'i': 8, 'h': 7, 'j': 9}
>>> d['d']
3
and use a dictionary comprehension to simplify the subtraction:
>>> d = {k: v-1 for k,v in d.iteritems()}
>>> d['d']
2