Python Classes and Objects :

Python Classes/Objects :

Python has been an object-oriented language since it existed. Because of this, creating and using classes and objects are downright easy. This chapter helps you become an expert in using Python's object-oriented programming support.

If you do not have any previous experience with object-oriented (OO) programming, you may want to consult an introductory course on it or at least a tutorial of some sort so that you have a grasp of the basic concepts.

However, here is small introduction of Object-Oriented Programming (OOP) to bring you at speed :

Overview of OOP Terminology :

  • Class − A user-defined prototype for an object that defines a set of attributes that characterize any object of the class. The attributes are data members (class variables and instance variables) and methods, accessed via dot notation.

  • Class variable − A variable that is shared by all instances of a class. Class variables are defined within a class but outside any of the class's methods. Class variables are not used as frequently as instance variables are.

  • Data member − A class variable or instance variable that holds data associated with a class and its objects.

  • Function overloading − The assignment of more than one behavior to a particular function. The operation performed varies by the types of objects or arguments involved.

  • Instance variable − A variable that is defined inside a method and belongs only to the current instance of a class.

  • Inheritance − The transfer of the characteristics of a class to other classes that are derived from it.

  • Instance − An individual object of a certain class. An object obj that belongs to a class Circle, for example, is an instance of the class Circle.

  • Instantiation − The creation of an instance of a class.

  • Method − A special kind of function that is defined in a class definition.

  • Object − A unique instance of a data structure that's defined by its class. An object comprises both data members (class variables and instance variables) and methods.

  • Operator overloading − The assignment of more than one function to a particular operator.

Create a Class and Object :

To create a class, use the keyword class :

Example :

  1. #Create a class named OurClass, with a property named " x "
  2. class OurClass:
  3. x = 10
  4. print(OurClass)
  5. #Create an object named obj, and print the value of " y "
  6. class OurClass:
  7. y = 5
  8. obj = OurClass()
  9. print(obj.y)
  10. input()

Output :

python classes and objects example

The __init__() Function :

To understand the meaning of classes we have to understand the built-in __init__() function. All classes have a function called __init__(), which is always executed when the class is being initiated. Use the __init__() function to assign values to object properties, or other operations that are necessary to do when the object is being created:

Example :

  1. #Create a class named Person, use the __init__() function to assign values for name and age:
  2. class Person:
  3. def __init__(self, name, age):
  4. self.name = name
  5. self.age = age
  6. obj = Person("AyaN", 24)
  7. print(obj.name)
  8. print(obj.age)
  9. input()

Output :

python __init__() function

Note : The __init__() function is called automatically every time the class is being used to create a new object.


Object Methods :

Objects can also contain methods. Methods in objects are functions that belongs to the object.

Example :

  1. #Insert a function that prints a greeting, and execute it on the " obj " object:
  2. class Person:
  3. def __init__(self, name, age):
  4. self.name = name
  5. self.age = age
  6. def myfun(self):
  7. print("Hello, my name is : " + self.name )
  8. obj = Person("AyaN", 24)
  9. obj.myfun()
  10. input()

Output :

python object methods

Note : The self parameter is a reference to the class instance itself, and is used to access variables that belongs to the class.

You can modify properties on objects like this: obj.age = 24 or you can delete properties on objects by using the del keyword, like this :del obj.age or, del obj .


Computer Science Engineering

Special Notes

It's a special area where you can find special questions and answers for CSE students or IT professionals. Also, In this section, we try to explain a topic in a very deep way.

CSE Notes