Skip to main content

SCRUMble ! - New Book about SCRUM

 SCRUMble ! Hello Blog Readers! Thank you for all your support and encouragement. I have something exciting for you all. I have recently written and published a new book called 'SCRUMble !'. It is currently available on pothi store. It will be soon available on Amazon and Flipkart as well. Please get your copy and do let me know your reviews. -Abhishek Sathe SCRUMble ! Written and Published by: Abhishek Sathe                                                                              Distributed by: pothi.com Order your copy now:  https://store.pothi.com/book/abhishek-sathe-scrumble/ Coming soon on Amazon and Flipkart About the book: Scrum is a framework for solving complex problems largely adapted by Software Development field. There are multiple ag...

Python 102

This post is in continuation with the previous post: Python 101.

Classes in Python:
A class in python is specified with keyword 'class'. Below is an example showing how to create a class:

class Greet:
      
        Message = ""

        def __init__(self, Name="Abhishek"):
                self.Message = Name
        def wish(self):
                print("Good Day to {0}".format(self.Message))
   
MyInstance = Greet()
MyInstance.wish()

Output:
Good Day to Abhishek

Objects:
Variables and methods encapsulated together creates an object. In other words, an object is an instance of a class. In above example, 'MyInstance' is an object of class 'Greet'. 

Class Attributes:
Class attributes can be accessed using a dot. In above example, we accessed a class attribute 'Message' inside the constructors as:
self.Message = Name

Constructors in Python:
 __init__() is called constructor in python. The first argument the constructor takes is used to refer to instance object. Additional parameters follow this, if any. In above example, 'self' is the first parameter used to refer to the instance to which the constructor is going to initialize. Name="Abhishek" is an additional parameter.

Methods in Classes:
The functions defined inside a class are called class methods. In above example,  __init__() is a constructor. There is one more method wish() defined inside class Greet.

Inheritance in Python:
The syntax to inherit one class from another is:
class Derived(BaseClass):
        #code for Derived

Here class 'Derived' inherits from class 'BaseClass'.

Overriding in Python:
A class can inherit from its parent class and decide to have its own implementation. This is called overriding. Here is an example:

class Parent(object):
        def greet(self):
                print("Good Morning")

class Child(Parent):
        def greet(self):
                print("Good Night")

Destructors in python:
Similar to a constructor, we can write a destructor in pythin using keyword '__del__'. Once you are done with objects of a class, you can invoke its destructor using keyword 'del'. Here is an example:
class Demo:
   
  def __init__(self):
    print("This is constructor")

  def __del__(self):
    print("This is destructor")

obj = Demo()
del obj

Output:
This is constructor
This is destructor

Comments

Popular posts from this blog

Mobile Automation using Appium-Java

Appium is an open-source, UI automation tool for automating mobile apps. This tutorial is helpful for setting up a Java-Selenium based project in Eclipse IDE for you to be able to execute test automation scripts for your mobile application. Please note that, we assume you already have an existing project for importing locally or cloning from git.  Steps to be performed for setup required for automation of mobile applications using Appium Mobile Automation tool using Java-Selenium: Below is the list of steps that needs to be performed for setting up the environment for execution of test cases on Windows: JDK Installation. Setting PATH variable. Installation of Android SDK. Installation of Eclipse. Importing a project in Eclipse. Install Eclipse ADT plugin. Install other required softwares. Install Appium. JDK Installation: Install JDK from http://www.oracle.com/technetwork/java/javase/downloads/index.html. After installation of java software...

Cookies

What is a Cookie? A typical application is likely to involve a number of interactions between the client and the server. There must be some mechanism for the client to identify itself to the server each time it sends an HTTP request to the server. For this, cookies are used. Cookies are the most popular mechanism of maintaining state information. Working of Cookies: 1. When you interact with a website for the first time, the site might want you to register yourself. Here, you enter details line name, address etc. on a web page. 2. Server stores this information on its database. Additionally, it creates a unique id for you. It stores this id in the database and also sends it to you in the form of a cookie. 3. Next time when you interact with the server using a website, it would automatically send the id(i.e. Cookie) along with HTTP request for a particular page to the server. 4. The server matches this id in the database and knows that you are a registered user. Accordingly...

Bipartite and semihamiltonian graphs

Bipartite Graph: A graph is bipartite if its vertex set can be partitioned into two subsets X and Y so that every edge has one end in X and one end in Y; such a partition (X,Y) is called bipartition of the graph, and X and Y its parts. ex.- Notation: We denote a bipartite graph G with bipartition (X,Y) by G[X,Y]. Complete Bipartite Graph: If G[X,Y] is simple and every vertex in X is joined to every vertex in Y, then G is called a Complete Bipartite graph. ex.- Semi-Hamiltonian Graph: A semi-Hamiltonian graph is a graph that contains a Hamiltonian path, but not a Hamilton cycle. Hamiltonian Path: A Hamiltonian path in an undirected or directed graph is a path which visits each vertex exactly once. ex.- C-A-D-B-E is a Hamiltonian path Hamiltonian Cycle: A Hamiltonian cycle or a Hamiltonian Circuit is a Hamiltonian path which is a cycle. This post will be useful in understanding a question: "The nabhi kamal grapg is:" (A)Bipartite graph (B)Semi-...