Core and Advanced Python Programming

This 3 month course trains you on the basic and advanced concepts in python programming to help you out in the software development field.

Enroll Now View demo

A Quick Overview

The Python programming language has become one of the most popular programming languages in the last few years. This is due to its simplicity and ease of use. It provides a set of ever expanding and powerful built-in libraries. Python provides the dual advantage of being easy to learn for beginners as well as being useful in scientific applications. It is used in diverse applications like web development, data analysis, machine learning, artificial intelligence and graphical user interfaces.

This course is designed for students without any programming background and who want to take the first step into a career as a software developer. This course provides an in depth introduction to the core concepts of Python as well as covering some of the most widely used libraries like Pandas, Numpy and Tkinter. An introduction to databases is provided through the SQLite database. The topics covered in this course include:

  • Python basics,
  • Data types,
  • Conditional statements,
  • Object oriented programming,
  • Functional programming,
  • File handling,
  • Exceptions,
  • Data analysis with Pandas,
  • Numerical computing with Numpy,
  • GUI development using tkinter and SQLite database.

Exciting challenges are provided at the end of each topic which enhance the understanding of the topic and help in solidifying the concepts. Two full fledged projects are also provided with the course. At the end of the course, you will be able to apply Python programming skills in order to solve any type of mathematical, GUI or database problems.


Get a 1-on-1 demo to understand what is included in the course and how it can benefit you from an experienced sales consultant. The demo session will help you enroll in this course with a clear vision and confidence.

Request a Demo Session


1Introduction to Python, Python Basics

• Discussion about Features and uses of Python, Program execution, Installation of IDE.
• Identifiers and keywords, types of comments, data types, Variables, Arithmetic operators, Assignment operators
• Input and print statements

2Strings, Decision control statements

• Definition of string, operations accessing string elements
• Relational operators, Logical operators, Conditional expressions, If, If..else, If..elif

3Repetition Statements, Console input-output

• Usage of while and for, break and continue, pass and else statements
• Formatted input and output

4Lists, Tuples, Sets, Dictionary

• Accessing list elements, basic list operations, types of lists
• Accessing tuple elements, types of tuples, tuple operation
• Accessing set elements, set operations and methods, Mathematical set operations, updating set operations
• Accessing dictionary elements, dictionary operations and methods, nested dictionary

5Functions and Recursion, Functional Programming and Lambda functions

• Defining a function, types of arguments
• Global and local variables
• Functions as arguments, Implementing Lambda functions
• Map, Reduce, Filter functions

6File Input-Output, Modules

• Read-write operations, with keyword, file opening modes, moving within a file
• Serialization, file and directory operations
• Importing a module, variations of import, third-party packages

7Classes and objects

  • Class variables and methods, Operator overloading
  • Reuse, Containership, Inheritance

8Exception handling, Iterators and generators

  • Iterables and iterators
  • Syntax errors and exceptions, try-except, else, finally blocks

9Data Analysis with Pandas

  • Installing Pandas
  • Loading CSV files, JSON files
  • Dataframes

10Numeric and Scientific Computing using Numpy

  • Introduction to Numpy
  • OpenCV
  • Images and Numpy Arrays

11Graphical User Interfaces with Tkinter

  • Introduction to Tkinter
  • Setting up a GUI with widgets
  • Connecting GUI widgets with Callback functions

12Interacting with Databases

  • Introduction to SQLite
  • Connecting and inserting data to SQLite via Python
  • Selecting, deleting and updating SQLite records

Projects Overview

Project 1


This project uses the skills learnt from week 1 to week 6. The aim of this project is to create an English Dictionary app that returns definitions of English words. When the application is started, it displays a menu as follows:

Main Menu
1. Add a new word
2. Find the meaning
3. Update a word
4. Exit
Enter Choice:

If item 1 is selected, it should prompt for a word and then accept its meaning. This pair of word and its meaning should be stored in a file called ‘words.txt’. When item 2 is selected, it should prompt for a word, search that word in the file ‘words.txt’ and return the meaning if it is found. If the meaning is not found, it should display an appropriate message. Similarly, when choice 3 is entered, it should accept a word and update its meaning. In all the above three cases, the prompt should return to the main menu. The words and their meanings should be stored as a dictionary in words.txt, using the concept of serialization. If choice 4 is selected, a graceful exit should be performed.

Project 2


In this project, a Library Book Management System will be implemented with the front end GUI developed using Tkinter and the backend database implemented in SQLite. It is a single window tkinter GUI application which will implement CRUD( create, read, update,delete) operations on a ‘books’ database, in SQLite. The window will contain text widgets to accept/ display book title, author, year of publication, ISBN (optional) and a large text area/ list box to display the records which match the search criteria. It should contain buttons to perform the following operations on the ‘books’ database:

1. Display all the records
2. Search a book
3. Add a book
4. Issue a book
5. Delete a book
6. Exit the application

When option 1 is selected, all the books present in the library should be displayed. Option 2 should be able to search the book based on any of the criteria like author name, book title, year or ISBN. Similarly, it should be able to add the entry when option 3 is selected and issue a book when option 4 is selected. The book details should be deleted when option 5 is selected. Selecting option 6 should provide a graceful exit from the app.

Flexible Course Fees

Choose the plan that’s right for you


2 Months Access


Per month for 3 months

  • Access Duration : 2 months
  • Mode of Delivery : Online
  • Project Portfolio : Available
  • Certification : Available
  • Email Support : Available
  • Forum Support : Available

Lifetime Access


Per month for 3 months

  • Access Duration : Lifetime
  • Mode of Delivery : Online
  • Project Portfolio : Available
  • Certification : Available
  • Individual Video Support : 12/month
  • Group Video Support : 12/month
  • Email Support : Available
  • Forum Support : Available
  • Telephone Support : Available
  • Dedicated Support Engineer : Available


  • Engineering Students in Computer Science & Information Technology
  • Freshers looking to gain project experience in Python


Python – 3 programming language, Anaconda Navigator for developing programs, SQLite database

The software that will be used is Python – 3 programming language, Anaconda Navigator for developing programs, SQLite database for project and Visual Studio Code IDE (Optional). All the above software is extensively used in the IT industry for developing production quality software. All the above software are open source.


Companies hire from us

See all


  • Top 5% of the class will get a merit certificate
  • Course completion certificates will be provided to all students
  • Build a professional portfolio
  • Automatically link your technical projects
  • E-verified profile that can be shared on LinkedIn


See all

Frequently Asked Questions

1Who can take your course?

This course is ideal for students of all branches of Engineering who want to learn programming. No previous programming knowledge is assumed. In fact anyone who has basic knowledge of computers can take this course. This course is especially useful for those students who wish to pursue a career in the fields of software development or in Data Science.

2What is included in your course?

The course starts off by discussing core concepts beginning with the basic syntax, basic data types and operators of python, conditional statements and looping statements. Then we move on to the rich set of data structures like lists, sets, tuple and dictionary. Functions, classes and modules are covered. Advanced topics like file input output, database connectivity using SQLite, GUI programming using tkinter package are covered in detail. In addition, data analysis and scientific computing is covered using the Pandas and Numpy packages. In order to reinforce the concepts that are taught, two full-fledged real world projects are included as part of the course. In the first project, you will develop an English language Thesaurus where users will search and find definitions of English words. In the second project, you will develop a full-fledged Bookstore database application using SQLite as backend and Tkinter GUI for frontend. In addition, more than 100 practice programs ranging in difficulty from easy to hard are provided in order to check the grasp of the concepts. In order to help with interview preparation, several interview questions will also be provided as part of the course.

3What will the student gain from your course?

This is a practical hands-on course. Therefore, any student without prior programming knowledge can learn to confidently program using the Python programming language, provided they follow the video lectures and practice the exercises given as part of the course. On the other hand, if you want to be recognized as a professional programmer, you have to develop applications in Python which you can include in your online portfolio. To this end, two comprehensive projects have to be developed by every student.

4What software skills are you teaching and how well are these tools used in the industry?

The software that will be used is Python – 3 programming language, Anaconda Navigator for developing programs, SQLite database for project and Visual Studio Code IDE (Optional). All the above software is extensively used in the IT industry for developing production quality software.

5What real world application for the tools and techniques will you teach in this course?

Some of the real world domains in which Python programming concepts discussed in this course are relevant are:

• Web Development
• GUI based desktop applications
• Image processing and graphic design
• Scientific and Computational applications
• Games
• Enterprise business applications
• Operating Systems
• Network programming
• Education Programs and Training
• Artificial Intelligence and Machine Learning
• Web Scraping Applications

6Which companies use these techniques and for what?

Some of the world class companies that use Python are:

• Google: Python is one of the official server side languages at Google
• Facebook: At Facebook, Python is used for multiple services in Infrastructure Management.
• Instagram: Instagram runs the world’s largest deployment of Django web framework (which is completely written in Python).
• Spotify: This music streaming giant is a huge proponent of Python, using the language for data analysis and back end services.
• Netflix: Netflix uses Python to power its data analysis task at the Server side.

7How is your course going to help me in my path to MS or PhD?

In the current scenario and as per the predicted trends in the future, Data Science is a major area of research across functional areas like Medical diagnosis and Financial management. The Python community is one of the most active programming communities with a huge number of developed toolboxes. The most popular Python toolboxes for any data scientist are NumPy, SciPy, Pandas, and Scikit-Learn. These packages are used for research in the broad areas of Data Science and Machine Learning. Several packages exist for programming with Computer Vision in Python. Therefore, whichever area of research you choose in MS or PhD, whether it is Artificial Intelligence or Data Science, you will find several uses of the Python programming language, supported by a vast network of programmer community.

8How is this course going to help me get a job?

In the list of top programming languages for 2019 by the IEEE Spectrum, Python is at #1. According to the 2020 survey by Stack Overflow, Python is one of the most widely used languages in the software development industry in 2020. Therefore, the job opportunities for Python programmers are enormous and are projected to grow further in the future. However, whether you will be able to learn Python and be job-ready, heavily depends on you. You have to practice the code you see in the video lectures, modify the code, fix the possible errors, and try to solve all the exercises in the course and implement the projects that are part of the course. In this way you will certainly learn how to program with Python and immensely increase your chances of getting a job.

You Might Also Be Interested In

Related Courses

See all

The Skill-Lync Advantage

See all