I'm not sure what you're asking. What would be wrong with making a user specified object Image like this:
from opencv.cv import *
class Image:
def __init__(self, file):
image = cvLoadImage (file)
# whatever else you may need to store or do
list = []
someImg = Image("C:/somefile.png")
list.append(someImg)
and then storing those in a list?
That's how I would do it in your situation, but I may be mis-interpreting the specifics of your question.
Edit: I also haven't really used OpenCV in python, so I'm not sure how the imports and image creation works, but it appears to be something like this. Reference: here or here
Also, the numpy.ndarray is a good one, since you seem to be referring to using a vector (here python list) of matrices (here numpy.ndarrays), which you may be more comfortable with.