<< Chapter < Page Chapter >> Page >
Listing 8 . Instantiate two objects from the class.
print("2 Instantiate two objects") ref01 = TestClass()ref02 = TestClass() print("3 Display class var using objects")ref01.printClassVar01() ref02.printClassVar01()

Listing 8 also uses the variables named ref01 and ref02 to call the printClassVar01 method shown in Listing 7 on each object. This method concatenates and prints a portion of the object identifier (self) with the contents of classVar (as seen by the object) .

Figure 4 shows the output produced by the code in Listing 8 . As you can tell from Figure 4 , each object sees classVar as containing the initial value from Listing 7 .

Figure 4 . Output from the code in Listing 8.
2 Instantiate two objects 3 Display class var using objectsTestClass object at 0x02091DD0: [1, 2, 3, 4] TestClass object at 0x0218C710: [1, 2, 3, 4]

Modify class variable using object

The code in Listing 9 uses the reference to a single object ( ref01 ) to call the method named modifyClassVar01 (see Listing 7 ) on that object, which appends the string "a" onto the list referred to by the class variable named classVar . (As an aside, note that the code in the method uses the word self to access the class variable.)

Listing 9 . Modify class variable using object.
print("4 Modify class var using object") ref01.modifyClassVar01()print("5 Display class var using objects") ref01.printClassVar01()ref02.printClassVar01()

After causing the string "a" to be appended to the list, Listing 9 uses the variables named ref01 and ref02 to call the printClassVar01 method on each object. This causes each object to print the list as it sees it. The results are shown in Figure 5 .

Figure 5 . Output from the code in Listing 9.
4 Modify class var using object 5 Display class var using objectsTestClass object at 0x02091DD0: [1, 2, 3, 4, 'a'] TestClass object at 0x0218C710: [1, 2, 3, 4, 'a']

Even though the contents of the list were modified only by code executed in ref01 , the results are seen by both objects. This is because the class variable is shared among all objects instantiated from theclass.

Modify the class variable using the class name

I could have stopped at that point and stated "case closed" . However, I decided to add a few more lines of code to illustrate that it doesn't matter how a classvariable is modified, it still impacts all objects instantiated from the class because the class variable is shared among all objects instantiated fromthe class.

The code in Listing 10 uses the name of the class to access and modify the list referred to by the class variable named classVar in the class named TestClass . The boolean value True is appended to the list by the code in Listing 10 .

Listing 10 . Modify the class variable using the class name.
print("6 Modify class var using class") TestClass.classVar.append(True)print("7 Display class var using objects") ref01.printClassVar01() ref02.printClassVar01()print("8 Display class var using class: " + str(TestClass.classVar))

After that, the code in Listing 10 causes each object to print the list as it see it. To seal the deal, the code in Listing 10 uses the name of the class to access and print the value stored in the class variable. The result isshown in Figure 6 .

Questions & Answers

if three forces F1.f2 .f3 act at a point on a Cartesian plane in the daigram .....so if the question says write down the x and y components ..... I really don't understand
Syamthanda Reply
hey , can you please explain oxidation reaction & redox ?
Boitumelo Reply
hey , can you please explain oxidation reaction and redox ?
Boitumelo
for grade 12 or grade 11?
Sibulele
the value of V1 and V2
Tumelo Reply
advantages of electrons in a circuit
Rethabile Reply
we're do you find electromagnetism past papers
Ntombifuthi
what a normal force
Tholulwazi Reply
it is the force or component of the force that the surface exert on an object incontact with it and which acts perpendicular to the surface
Sihle
what is physics?
Petrus Reply
what is the half reaction of Potassium and chlorine
Anna Reply
how to calculate coefficient of static friction
Lisa Reply
how to calculate static friction
Lisa
How to calculate a current
Tumelo
how to calculate the magnitude of horizontal component of the applied force
Mogano
How to calculate force
Monambi
a structure of a thermocouple used to measure inner temperature
Anna Reply
a fixed gas of a mass is held at standard pressure temperature of 15 degrees Celsius .Calculate the temperature of the gas in Celsius if the pressure is changed to 2×10 to the power 4
Amahle Reply
How is energy being used in bonding?
Raymond Reply
what is acceleration
Syamthanda Reply
a rate of change in velocity of an object whith respect to time
Khuthadzo
how can we find the moment of torque of a circular object
Kidist
Acceleration is a rate of change in velocity.
Justice
t =r×f
Khuthadzo
how to calculate tension by substitution
Precious Reply
hi
Shongi
hi
Leago
use fnet method. how many obects are being calculated ?
Khuthadzo
khuthadzo hii
Hulisani
how to calculate acceleration and tension force
Lungile Reply
you use Fnet equals ma , newtoms second law formula
Masego
please help me with vectors in two dimensions
Mulaudzi Reply
how to calculate normal force
Mulaudzi
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Itse 1359 introduction to scripting languages: python. OpenStax CNX. Jan 22, 2016 Download for free at https://legacy.cnx.org/content/col11713/1.32
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Itse 1359 introduction to scripting languages: python' conversation and receive update notifications?

Ask