I agree with PM-2ring's that in most contexts a list of lists or a dict would be more appropriate.
d = {}
for i in range(1,4):
d['list%s' % i] = []
or
l = [[] for x in range(1,4)]
But to answer the question actually asked in case this is one of the very rare cases where it is the right thing to do even with all the problems associated with dynamic creation of variables (maintainability, access, sanitizing user input, etc).
You probably shouldn't do any of the below if it is new information to you.
It depends on the context a bit. If you're inserting them into an object it would be:
a = classA()
for i in range(1,4):
setattr(a, 'list%s' % i, [])
If trying to create a global var:
for i in range(1,4):
globals()['list%s' % i] = []