Tutorial Material

Python Object & Class

Share to

Python has been an object-oriented language since it existed. Creating and using classes and objects are downright easy. This tutorial will help you become an expert in using Python's object-oriented programming support.

If you do not have any prior experience with object-oriented programming (OOP), 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.

If you understand the basic concepts of OOP here is an introduction of Object-Oriented Programming (OOP) to help you.

Terminology in OOP

Term Explanation
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.

Creating Python Class

The class statement is used to create a new class definition. The name of the class immediately follows the keyword class followed by a colon as follows:

class ClassName: 'Optional class documentation string' class_suite

Here is an example of creating a simple Python class:

class Employee:
  'Common base class for all employees'
  empCount = 0

  def __init__(self, name, salary):
    self.name = name
    self.salary = salary
    Employee.empCount += 1

  def displayCount(self):
    print ("Total Employee %d" % Employee.empCount)

  def displayEmployee(self):
    print ("Name : ", self.name, ", Salary: ", self.salary)

Creating Instance Objects

To create instances of a class, you call the class using class name and pass in whatever arguments its __init__ method accepts.

# This would create first object of Employee class
emp1 = Employee("Zara", 2000)
# This would create second object of Employee class
emp2 = Employee("Manni", 5000)

Accessing Attributes

You access the object's attributes using the dot operator with object. Class variable would be accessed using class name as follows:

emp1.displayEmployee()
emp2.displayEmployee()
print ("Total Employee %d" % Employee.empCount)

For the complete example, please see the code below.

class Employee:
  'Common base class for all employees'
  empCount = 0

  def __init__(self, name, salary):
    self.name = name
    self.salary = salary
    Employee.empCount += 1

  def displayCount(self):
    print ("Total Employee %d" % Employee.empCount)

  def displayEmployee(self):
    print ("Name : ", self.name, ", Salary: ", self.salary)

#This would create first object of Employee class"
emp1 = Employee("Zara", 2000)
#This would create second object of Employee class"
emp2 = Employee("Manni", 5000)
emp1.displayEmployee()
emp2.displayEmployee()
print ("Total Employee %d" % Employee.empCount)

Edit this tutorial

Belajarpython x DevMode Community
OFFICIAL COMMUNITY

Gabung Komunitas Developer & Kreator Digital

Dapatkan teman coding, sharing project, networking dengan expert, dan update teknologi terbaru.

Bebas spam. Unsubscribe kapan saja. DEVMODE Community