<< Chapter < Page | Chapter >> Page > |
Listing 7 . Instantiate and display two objects. |
---|
print("Instantiate and display two objects of TestClass")
ref01 = TestClass("ABCD")print(ref01)
ref02 = TestClass("DEFG")print(ref02) |
You may have been wondering about the source of the incoming parameter named data for the __init__ method in Listing 6 . Note that each call to TestClass in Listing 7 passes a different parameter. These are the parameters that areautomatically passed to the __init__ method when it is executed. Therefore, when one object is instantiated, the __init__ method will receive "ABCD" as an incoming parameter. When the other object isinstantiated, it will receive "DEFG" as an incoming parameter.
Because the __init__ method is included in the class definition and because it is automatically executed when a new object isinstantiated, each object contains an instance variable named iVar01 when the instantiation of the object is complete.
The code in Listing 8 displays the value of the instance variable named iVar01 in each object.
Listing 8 . Display first instance variable from both objects. |
---|
print("Display first instance variable from both objects")
print(ref01.iVar01)print(ref02.iVar01) |
Figure 4 shows the output from the code in Listing 8 . Note that the last two lines of text in Figure 4 match the values passed as parameters when the objects were instantiated in Listing 7 .
Figure 4 . Output from the code in Listing 8. |
---|
Display first instance variable from both objects
ABCDDEFG |
The remaining code shown in Listing 11 is essentially the same as the corresponding code shown in Listing 10 that was discussed earlier. Therefore, no explanation of the remaining code should be needed.
Hopefully you have a better understanding of Python instance variables now than when you began studying this module.
As usual, I recommend that you create a visualization for the code in Listing 11 and step through the program one instruction at a time. As you do that, pay attention tothe movements of the red and green arrows on the left, the diagram on the right, and the printed material at the bottom. That should help you to betterunderstand the __init__ method and the initialization of objects in Python.
I also encourage you to copy the code from Listing 9 , Listing 10 , and Listing 11 . Execute the code and confirm that you get the same results as those shown. Experiment with the code,making changes, and observing the results of your changes. Make certain that you can explain why your changes behave as they do.
Complete listings of the programs discussed in this module along with the output produced by those programs are provided below.
Listing 9 . Complete program listing. |
---|
# This program illustrates an empty object
#---------------------------------------------------------------------class TestClass(object):
passprint("Instantiate and display two objects of TestClass")
ref01 = TestClass()print(ref01)
ref02 = TestClass()print(ref02)
print("Add an instance variable to one object and display it")ref01.iVar = 1234
print(ref01.iVar)print("Try to display the same instance variable in the other object")
print(ref02.iVar) |
Notification Switch
Would you like to follow the 'Itse 1359 introduction to scripting languages: python' conversation and receive update notifications?