# Advance Python Programming Course

> Learn Python with Rohini, Delhi best it training institute, named as next-g classes. In this python course you will learn core python in details under 15+ years’ professional trainers.

- Institute: Next-G Classes, Plot No 4, Kh. No. 59/13, First Floor, Pal Colony, Rithala, Near Rithala Metro Station, Delhi - 110085
- Web page: https://nextgclasses.com/advanced-python-course
- Duration: Regular 45 Days · Fastrack 25 Days · Crash 15 Days
- Mode: Classroom and Live Online · Certificate · Live projects · Placement assistance
- Enquire: +91-7503301775 · nextgclasses@gmail.com

## Syllabus

**Module: 1**

- Importance of modular programming

- What is module

- Types of Modules – Pre defined, User defined.

- User defined modules creation

- Functions based modules

- Class based modules

- Connecting modules

- Import module

- From … import

- Module alias / Renaming module

- Built In properties of module

**Module: 2 Packages**

- Organizing python project into packages

- Types of packages – pre defined, user defined.

- Package v/s Folder

- py file

- Importing package

- PIP

- Introduction to PIP

- Installing PIP

- Installing Python packages

- Un installing Python packages

**Module: 3 OOPS**

- Procedural v/s Object oriented programming

- Principles of OOP – Encapsulation , Abstraction (Data Hiding)

- Classes and Objects

- How to define class in python

- Types of variables – instance variables, class variables.

- Types of methods – instance methods, class method, static method

- Object initialization

- ‘self’ reference variable

- ‘cls’ reference variable

- Access modifiers – private(__) , protected(_), public

- AT property class

- Property() object

- Creating object properties using setaltr, getaltr functions

- Encapsulation(Data Binding)

- What is polymorphism?

**Module: 4 Overriding**

- Method overriding

- Constructor overriding

**Overloading**

- Method Overloading

- Constructor Overloading

**Operator Overloading**

- Class re-usability

- Composition

- Aggregation

- Inheritance – single , multi level, multiple, hierarchical and hybrid inheritance and Diamond inheritance

- Constructors in inheritance

- Object class

- super()

- Runtime polymorphism

- Method overriding

- Method resolution order(MRO)

- Method overriding in Multiple inheritance and Hybrid Inheritance

- Duck typing

- Concrete Methods in Abstract Base Classes

- Difference between Abstraction & Encapsulation

- Inner classes

- Introduction

- Writing inner class

- Accessing class level members of inner class

- Accessing object level members of inner class

- Local inner classes

- Complex inner classes

- Case studies

**Module: 5Regular expressions**

- Understanding regular expressions

- String v/s Regular expression string

- “re” module functions

- Match()

- Search()

- Split()

- Findall()

- Compile()

- Sub()

- Subn()

- Expressions using operators and symbols

- Simple character matches

- Special characters

- Character classes

- Mobile number extraction

- Mail extraction

- Different Mail ID patterns

- Data extraction

- Password extraction

- URL extraction

- Vehicle number extraction

- Case study

**Module: 7File &Directory handling**

- Introduction to files

- Opening file

- File modes

- Reading data from file

- Writing data into file

- Appending data into file

- Line count in File

- CSV module

- Creating CSV file

- Reading from CSV file

- Writing into CSV file

- Object serialization – pickle module

- XML parsing

- JSON parsing

**Module: 8Date & Time module**

- How to use Date & Date Time class

- How to use Time Delta object

- Formatting Date and Time

- Calendar module

- Text calendar

- HTML calendar

**OS module**

- Shell script commands

- Various OS operations in Python

- Python file system shell methods

- Creating files and directories

- Removing files and directories

- Shutdown and Restart system

- Renaming files and directories

- Executing system commands

**Module: 9Multi-threading & Multi Processing**

- Introduction

- Multi-tasking v/s Multi-threading

- Threading module

- Creating thread – inheriting Thread class , Using callable object

- Life cycle of thread

- Single threaded application

- Multi-threaded application

- Can we call run() directly?

- Need to start() method

- Sleep()

- Join()

- Synchronization – Lock class – acquire(), release() functions

- Case studies

**Garbage collection**

- Introduction

- Importance of Manual garbage collection

- Self-reference objects garbage collection

- ‘gc’ module

- Collect() method

- Threshold function

- Case studies

**Module: 10Python Data Base Communications (PDBC)**

- Introduction to DBMS applications

- File system v/s DBMS

- Communicating with MySQL

- Python – MySQL connector

- connector module

- connect() method

- Oracle Database

- Install cx_Oracle

- Cursor Object methods

- execute() method

- executeMany() method

- fetchone()

- fetchmany()

- fetchall()

- Static queries v/s Dynamic queries

- Transaction management

- Case studies

**Module: 11Python – Network Programming**

- What is Sockets?

- What is Socket Programming?

- The socket Module

- Server Socket Methods

- Connecting to a server

- A simple server-client program

- Server

- Client

**Module: 12Tkinter & Turtle**

- Introduction to GUI programming

- Tkinter module

- Tk class

- Components / Widgets

- Label , Entry , Button , Combo, Radio

- Types of Layouts

- Handling events

- Widgets properties

- Case studies

