<< Chapter < Page Chapter >> Page >
If both the object and the class contain attributes with the same name, the attribute in the object will shadow or hide the attribute in the class. I willdemonstrate the impact of this later.

If the search pattern described above is correct, we would expect the code in Listing 5 to display the values contained in each of the two new class variables belonging to the class named TestClass . Figure 2 shows the output produced by the code in Listing 5 and verifies that the search pattern described above is probably correct. The values stored in the new class variables are displayedin Figure 2 by the code in Listing 5 .

Figure 2 . Output of the code in Listing 5.
Display both class variables via one object ref01: ABCDref01: 1234

Display both class variables via the other object

The code in Listing 6 along with the output shown in Figure 10 shows unsurprisingly that the other object that was instantiated from TestClass can be used to access and display the same contents of the same two class variables.

Listing 6 . Display both class variables via the other object.
print("Display both class variables via the other object") print("ref02: " + ref02.classVar01)print("ref02: " + ref02.classVar02)

This is because class variables belonging to a class are shared among all objects instantiated from that class unless shadowed by an instance variablehaving the same name in an object of the class. This will be demonstrated in the programs that follow.

Typical class variable usage

Listing 16 shows a program that probably comes closer to the intended use of class variables than the code in the earlier program shown in Listing 15 . The output from the code shown in Listing 16 is shown in Figure 11 .

This program demonstrates that class variables are shared among the objects instantiated from a class. It also demonstrates that changes to class variablesin that class impact all of the objects instantiated from the class.

The class definition

Listing 7 shows the definition of the class for this program including the creation andinitialization a class variable named classVar . The class definition also includes a couple of methods that I will discuss later.

Listing 7 . The class definition.
class TestClass(object): classVar = [1,2,3,4]def modifyClassVar01(self): self.classVar.append("a")def printClassVar01(self): print(str(self)[10:40]+ ": " + str(self.classVar)) print("1 Display class var using class: " + str(TestClass.classVar))

Listing 7 also contains a print statement that prints the value of the variable named classVar by using the name of the class, TestClass , to access the variable. The output is shown in Figure 3 .

The output shown in Figure 3 faithfully reproduces the initial value of the class variable shown in the second line of text in Listing 7 .

Figure 3 . Output from the code in Listing 7.
1 Display class var using class: [1, 2, 3, 4]

Instantiate two objects from the class

Listing 8 instantiates two separate and distinct objects from the class named TestClass . Those objects' references are stored in the variables named ref01 and ref02 .

Questions & Answers

what is phylogeny
Odigie Reply
evolutionary history and relationship of an organism or group of organisms
AI-Robot
ok
Deng
what is biology
Hajah Reply
the study of living organisms and their interactions with one another and their environments
AI-Robot
what is biology
Victoria Reply
HOW CAN MAN ORGAN FUNCTION
Alfred Reply
the diagram of the digestive system
Assiatu Reply
allimentary cannel
Ogenrwot
How does twins formed
William Reply
They formed in two ways first when one sperm and one egg are splited by mitosis or two sperm and two eggs join together
Oluwatobi
what is genetics
Josephine Reply
Genetics is the study of heredity
Misack
how does twins formed?
Misack
What is manual
Hassan Reply
discuss biological phenomenon and provide pieces of evidence to show that it was responsible for the formation of eukaryotic organelles
Joseph Reply
what is biology
Yousuf Reply
the study of living organisms and their interactions with one another and their environment.
Wine
discuss the biological phenomenon and provide pieces of evidence to show that it was responsible for the formation of eukaryotic organelles in an essay form
Joseph Reply
what is the blood cells
Shaker Reply
list any five characteristics of the blood cells
Shaker
lack electricity and its more savely than electronic microscope because its naturally by using of light
Abdullahi Reply
advantage of electronic microscope is easily and clearly while disadvantage is dangerous because its electronic. advantage of light microscope is savely and naturally by sun while disadvantage is not easily,means its not sharp and not clear
Abdullahi
cell theory state that every organisms composed of one or more cell,cell is the basic unit of life
Abdullahi
is like gone fail us
DENG
cells is the basic structure and functions of all living things
Ramadan
What is classification
ISCONT Reply
is organisms that are similar into groups called tara
Yamosa
in what situation (s) would be the use of a scanning electron microscope be ideal and why?
Kenna Reply
A scanning electron microscope (SEM) is ideal for situations requiring high-resolution imaging of surfaces. It is commonly used in materials science, biology, and geology to examine the topography and composition of samples at a nanoscale level. SEM is particularly useful for studying fine details,
Hilary
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