The initial question I had was whether or not a method could be called from a Python constructor. The answer here suggests that it can, but this surprised me some as, based on my reading, python cannot use something that hasn't been previously defined in the code. Looking at the answers in the linked thread, it seems like they are using a method in the constructor that is defined later in the text. How is this possible in python?
Thanks.
__init__()is an initializer, not a constructor. By the time__init__()is called, the object fully exists.__new__which amongst other things gives the object its methods, then__init__is called to initialize the object.