How do I go about creating a list of objects (class instances) in Python?
Or is this a result of bad design? I need this cause I have different objects and I need to handle them at a later stage, so I would just keep on adding them to a list and call them later.
Since List is an interface, objects cannot be created of the type list. We always need a class that implements this List in order to create an object. And also, after the introduction of Generics in Java 1.5, it is possible to restrict the type of object that can be stored in the List.
Storing a list of object instances is very simple
class MyClass(object): def __init__(self, number): self.number = number my_objects = [] for i in range(100): my_objects.append(MyClass(i)) # later for obj in my_objects: print obj.number
You can create a list of objects in one line using a list comprehension.
class MyClass(object): pass objs = [MyClass() for i in range(10)] print(objs)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With