Course

Advanced Python

This course is designed to teach you the foundations in order to write simple programs in Python using the most common structures. No previous exposure to programming is needed. By the end of this course, you will understand the benefits of programming in IT roles; be able to write simple programs using Python; figure out how the building blocks of programming fit together and combine all of this knowledge to solve a complex programming problem.
We will start by diving into the basics of writing a computer program. Along the way, you will get hands-on experience with programming concepts through interactive exercises and real-world examples. You will quickly start to see how computers can perform a multitude of tasks — you just have to write code that tells them what to do.

BRIDGE COURSE

  • History
  • Features
  • Setting up path
  • Working with Python scripts
  • Basic Syntax
  • Variables and Data Types in scripting
  • Operators
  • If , If- else, Nested if-else statements
  • For, While loops
  • Nested loops
  • Control Statements
  • Accessing Strings
  • Basic Operations
  • String slices
  • Function and Methods
  • Accessing list
  • Operations
  • Working with lists
  • Function and Methods
  • Accessing tuples
  • Operations
  • Working
  • Functions and Methods
  • Accessing values in dictionaries
  • Working with dictionaries
  • Properties
  • Functions
  • Defining a function
  • Calling a function
  • Types of functions
  • Function Arguments
  • Anonymous functions
  • Global and local variables
  • Importing module
  • Math module
  • Random module
  • Packages
  • Composition
  • Printing on screen
  • Reading data from keyboard
  • Opening and closing file
  • Reading and writing files
  • Functions
  • Exception
  • Exception Handling
  • Except clause
  • Try ? finally clause
  • User Defined Exceptions
  • Class and object
  • Attributes
  • Inheritance
  • Overloading
  • Overriding
  • Data hiding
  • Match function
  • Search function
  • Matching VS Searching
  • Modifiers
  • Patterns
  • Architecture
  • CGI environment variable
  • GET and POST methods
  • Cookies
  • File upload
  • Connections
  • Executing queries
  • Transactions
  • Handling error
  • Socket
  • Socket Module
  • Methods
  • Client and server
  • Internet modules
  • Thread
  • Starting a thread
  • Threading module
  • Synchronizing threads
  • Multithreaded Priority Queue
  • Tkinter Programming
  • Tkinter widgets
  • Mail Communication in python scripts

PYTHON WEB APP DEVELOPMENT WITH DJANGO

  • What is Django?
  • DRY programming: Don’t Repeat Yourself
  • How to get and install Django
  • models.py
  • urls.py
  • views.py
  • Setting up database connections
  • Managing Users & the Django admin tool
  • Django URL Patterns and Views
  • Designing a good URL scheme
  • Generic Views
  • Django Forms
  • Form classes
  • Validation & Authentication
  • Advanced Forms processing techniques
  • Unit Testing with Django
  • Using Python’s unittest2 library
  • Test
  • Test Databases
  • Scrapy – Overview
  • Scrapy – Environment
  • Scrapy – Spiders
  • Scrapy – Item Pipelines
  • Scrapy – Link Extractors
  • Scrapy – various output consoles
  • Define item
  • First spider project
  • Crawling Content
  • Extracting item
  • Scraped data
  • What is Flask?
  • Flask – Overview
  • Flask – Environment
  • Flask – Application
  • Flask – Routing
  • Flask – Variable Rules
  • Flask – URL Building
  • Flask – SQLite
  • Flask – SQLAlchemy
  • The core: Image – load, convert, and save
  • Smoothing Filters A – Average, Gaussian
  • Smoothing Filters B – Median, Bilateral
  • OpenCV 3 with Python
  • Image – OpenCV BGR: MatplotLIB
  • Basic image operations – pixel access
  • iPython – Signal Processing with NumPy
  • Signal Processing with NumPy I – FFT and DFT for sine, square
  • waves, unitpulse, and random signal
  • Signal Processing with NumPy II – Image Fourier Transform: FFT & DFT
  • Inverse Fourier Transform of an Image with low pass filter: cv2.idft()
  • Image Histogram
  • Video Capture and Switching colour spaces – RGB / HSV
  • Adaptive Thresholding – Otsu’s clustering-based image thresholding
  • Edge Detection – Sobel and Laplacian Kernels
    Canny Edge Detection
  • Hough Transform – Circles
  • Watershed Algorithm: Marker-based Segmentation I
  • Watershed Algorithm: Marker-based Segmentation II
  • Image noise reduction: Non-local Means denoising algorithm
  • Image object detection: Face detection using Haar Cascade Classifiers
  • Image segmentation – Foreground extraction Grabcut algorithm
  • based on graph cuts
  • Image Reconstruction – Inpainting (Interpolation) – Fast Marching Methods

DURATION

The duration of this course will be of 2 month, with 1-2 hour sessions each day for a total of 80 hours.

CERTIFICATION POLICY

Certificate of Merit for all the participants.
At the end of this course, an assessment will be organized among the participating candidates, and front-runners will be awarded a ‘Certificate of Excellence

ELIGIBILITY

Anyone interested can join this course