Learn Python basics and apply them to data science, machine learning, and AI projects.
Learning Mode: Learn at ALC or at Home
Detailed Course Curriculum
Hands-on module breakdown aligned with MKCL production standards and industry requirements.
What is Python?
History of Python
Versions of Python
Features of Python
Limitations of Python
Scripting Languages vs Programming Languages
Applications of Python
Python2 vs Python 3
What is Python used for?
Flavours of Python
Python compared to other Languages
Python vs Java
How Python works?
What is PVM?
Compiler vs Interpreter
Compile Time vs Run Time
Future Scope of Python and Career Opportunities
What is Memory Management?
Memory Management in various Programming Languages
Memory vs Storage
Three Areas of Memory Management
How important is Memory Management?
Memory Management
Memory management in Python
Allocator Domain
Allocation Domains in detail
Python Memory Manager
The Default Python Implementation C Python
GIL
Python Memory Allocation
Garbage Collection
Ways to make an object eligible for Garbage Collection
Reference Counting in Python
Cyclical Reference or Reference Cycle
Generational Garbage Collection
C Python Memory Management
Common Ways to reduce the Space Complexity
Python Installation on Windows
Adding Python to Environmental Variable
Checking Python Version on Windows
Verifying Pip Installation
What are IDE and IDLE Editors?
How to run Python Program using IDLE?
IDE’s Installation
How to install Visual Studio?
How to install Visual Studio?
Thony installation
Thony installation
Executing Python Program
Identifiers and rules to Write Identifiers
Constants, Variables and Literals
Keywords or Reserved Keywords
Python Comments
Python comments
Python comments
Benefits of using Python comments
Benefits of using Python comments
Python Syntax
Lines and Indentation
Python User Input
Data Types in Python
Text Data Type
Text Data Type
Numeric Types
Numeric Types
Sequence Type
Sequence Type
Mapping Types
Mapping Types
Set Types
Set Types
Boolean Types
Boolean Types
Binary Types
Binary Types
None Type
None Type
Type Casting
Type Casting
Operators in Python
Arithmetic Operators
Arithmetic Operators
Assignment Operators
Assignment Operators
Comparison Operators
Comparison Operators
Logical Operators
Logical Operators
Identity Operators
Identity Operators
Membership Operators
Membership Operators
Bitwise Operators
Bitwise Operators
Precedence and Associativity of Operators
Precedence and Associativity of Operators
Ternary Operator
Ternary Operator
What are Control Flow Statements in Python?
Decision Control Statements
Simple if
If else
Nested If
If elif else
Elif ladder
Short hand if ,if else
Multiple Conditions using and or Operator
Transfer Statements
Break
Break
Continue
Continue
Pass
Pass
Iterative statements
For
For
While
While
Nested For loop
Nested For loop
Pattern Programs
Data Types in brief
How to access String and Indexing?
String Slicing
Mutable and Immutable
Mathematical Operators for String (+,*)
Comparison of String
String Membership
Format String
Escape Character
Removing Spaces from String
Finding Substring
Counting Substring and Len()
Replacing a String
Splitting and Joining of String
Changing Case of a String
Checking tarting and ending part of the String
Methods to check type of Characters present in String
List and its Creation
Accessing Elements of List
List Mutability
List Traversing
Functions of List
Manipulating List
append()
append()
insert()
insert()
extend()
extend()
remove()
remove()
Ordering Elements of List
Ordering Elements of List
Alaising and Cloning of List Object
Use of Mathematical Operators for List
Comparision and Membership Operators
Nested List
List Comprehension
What is Tuple
Creating a Tuple
Accessing through Tuple
Tuple Methods
Mathematical and Membership Operators
Iterating through Tuple
Updating Tuple
Nesting of Tuple
Tuple Comprehension
Unpack Tuple
Difference between Tuple and List
Zipping of Tuples
Creating Sets
Modifying Sets
Removing Elements from set
Python set Operation
Set Method
Built in Functions
Set Comprehension
Frozen Sets
How to create Dictionary
Accessing Dictionary
Update Dictionary
Delete the elements from dictionary
Python dictionary methods
Membership and iterating through in dictionary
Important functions in dictionary pt1
Dictionary Comprehension
Nested Dictionary
Built in Functions
User Defined Function
Docstrings
Calling a function in python
Types of Arguements
Variable Length Arugements
Scope of variables
Types of Variables
Recursive Functions
Namespaces
Nested Functions
Benifits of functions
Anonymous function
Lambda Function in detail
filter,map and reduce function
map()
reduce()
properties of function
Decorators
Chaining Decorators
Magic Method
Iterables
Iterator and Iterations
Yield Keyword
Generators
Iterators vs Generators
Python Generator expression
What is module?
How to create a module ?
Possibilities of Import
Built in Modulles
Finding Members of module
The Special Variable Name
Packages
Library
Commonly used libraries
Random Module
Math Module
PIL
Movie Py Module
PyScreenShot Module
Date Class
Time Class
Date Time Class
Time Delta class
Open File
Properties of Files
Read & Write Operation
Seek and tell method
OS Module
Working with Directories
Handling binary data
CSV Files
Zip and Unzip
Types of Errors
Exception
Exception Handling Hierarchy
Customized Exception Handling
Control Flow in Try and Except
Multiple Exceptions
Default Exception
Finally Block
Control Flow in try except and finally
Else with try except finally
Types of Exception
Assert Keyword
Python Loggers
What is log and log file in programmin?
What is log and log file in programmin?
Levels of log messages
Levels of log messages
Using basicConfig
Using basicConfig
Formatting
Formatting
Classes and functions
Classes and functions
Logging Handlers
Logging Handlers
Stream Handlers
Stream Handlers
File Handlers
File Handlers
Working with Handlers
Working with Handlers
Exception Information
Exception Information
JSON
Json
Json
JSON Syntax
JSON Syntax
Datatypes in JSON
Datatypes in JSON
Read ,Write and Parse JSON
Read ,Write and Parse JSON
Python Object Conversions
Python Object Conversions
Python to JSON
Python to JSON
Formatting the results
Formatting the results
Serializing
Serializing
Parse JSON
Parse JSON
Deserialize
Deserialize
Pickling & Unpickling
Pickling & Unpickling
What is Reg ex
Character Classes
Quantifiers
Functions of Re-Module
Find all methods _ Important functions of re module
Symbols
Web scrapping using reg exp
Multitasking
Difference between Multiprocessing and multi-threading
Difference between Process and Thread
Ways of creating thread in python
Difference in program with and without Multithreading
Thread Identification Number
Functions/Methods in Multithreading
Daemon Thread
Synchornization
Diffference between lock and semaphore
Thread Communication
Inter Thread Communicatio
Concurrency and parallelism
Race Condition and DeadLock
Collection Modules
Counters
Ordered dict
default dict
chain map
Named Map
DeQue
User Dict
UserList
User String
Object Oriented vs Procedural Oriented
What is Class?
What is Object ?
Constructor
Self Keyword
Functions vs Method
Types of Variables
Static variable
Local Variable
Instance Variable
Class Method
Static Method
Inner Class
Garbage Collection in OOP’s
Destructor
Inheritance
Inheritance
Inheritance
Built in function in oops
Built in function in oops
Single Inheritance
Single Inheritance
Constructor super()
Constructor super()
Multiple inheritance
Multiple inheritance
Method Resolution Order (MRO)
Method Resolution Order (MRO)
Multilevel Inheritance
Multilevel Inheritance
Hirarchical Inheritance
Hirarchical Inheritance
Hybrid Inheritance
Hybrid Inheritance
Polymorphism
Polymorphism
Polymorphism
Polymorphism with class methods
Polymorphism with class methods
Polymorphism with functions and objects
Polymorphism with functions and objects
Overloading
Overloading
Operator Overloading
Operator Overloading
Magic Method for operator overloading
Magic Method for operator overloading
Method Overloading
Method Overloading
Constructor Overloading
Constructor Overloading
Method Overriding
Method Overriding
Method overriding with multiple and multilevel inheritance
Method overriding with multiple and multilevel inheritance
Method overriding with multiple and multilevel inheritance
Method overriding with multiple and multilevel inheritance
Constructor Overriding
Constructor Overriding
Type System
Type System
Duck Typing
Duck Typing
Abstraction
Types of Methods in Python
How to declare an abstract method in Python
Concrete Methods in Abstract Base Classes
Missed Abstract methods in implementation
Abstact classes contain more subclasses?
Different cases for Abstract class object creation
Built in Abstract Classes
Interfaces
Create a Python Interface
Python Interfaces vs Abstract Class
Encapsulation
Python Access Modifiers
Why we need Encapsulation
Calculator
Password Generator
Tic Tac Toe
Rock Paper Scissors
Chat Bot
BMI Calculator
Story Generator
Quiz Game
Create Acronyms
Intro
Introduction to Tkinter
Widgets in Tkinter
Tkinter Geometry
Python Tkinter Button
Python Tkinter Canvas
Python Tkinter CheckButton
Python Tkinter Entry
Python Tkinter Frame
Python Tkinter Label
Python Tkinter Listbox
Python Tkinter MenuButton
Python Tkinter Menu
Tkinter Project Calendar
Intro
Python Tkinter Message
Python Tkinter RadioButton
Python Tkinter Scale
Python Tkinter Scrollbar
Python Tkinter Text
Python Tkinter Toplevel
Python Tkinter SpinBox
Python Tkinter Paned Window
Python Tkinter Label Frame
Python Tkinter MessageBox
Python GUI PyQt5- Part 1 intro
PyQt5 Introduction
Modules and tools
PyQt5 First Program
PyQt5 First Program
PyQt5 Layouts
QVBoxLayout and QHBoxLayout
QVBoxLayout and QHBoxLayout
QGridLayout
QGridLayout
QFormLayout
QFormLayout
QStackedLayout
QStackedLayout
Signals and slots
PyQt5 Widgets
QLabel
QLabel
QLineEdit
QLineEdit
QPushButton
QPushButton
QRadioButton
QRadioButton
QCheckBox
QCheckBox
QComboBox
QComboBox
QSpinBox
QSpinBox
QSlider
QSlider
QMenuBar, QMenu & QAction
QMenuBar, QMenu & QAction
QToolBar
QToolBar
QInputDialog
QInputDialog
QFontDialog
QFontDialog
QFileDialog
QFileDialog
QTab
QTab
QStacked
QStacked
QSplitter
QSplitter
QDock
QDock
QStatusBar
QStatusBar
QList
QList
QScrollBar
QScrollBar
QCalendar
QCalendar
Python GUI PyQt5- Part 2 intro
Qmessagebox
Multiple document interface
Drag and Drop
Drawing API
Clipboard
BrushStyle Constants- Part 1
BrushStyle Constants- Part 2
QPixmap Class
Database handling
Project 1- Text Editor
Project 2- Calculator
Python Turtle intro
Introduction to Python Turtle
Moving and Drawing with turtle I
Moving and Drawing with turtle II
First Turtle Program
Turtle program on pen control I
Turtle program on pen control II
Program- Event handling
Program on working state of the turtle module
Working with turtle screen 1
Working with turtle screen 2
Program Colorfull Star Pattern
Turtle Methods
Program - Draw a hut using turtle module
Pygame intro
Pygame Introdution
Basic structure of a Pygame program
Basic Pygame concepts
Pygame - Display Modes
Pygame - Color Object
Pygame - Event Objects
Keyboard Events
Mouse Events
Pygame - Drawing Shapes
Pygame - Using Image
Pygame - Displaying Text
Pygame - Moving an Image
Pygame - Use Text as Buttons
Pygame - Transforming Images
Pygame - Sound Objects
Playing Music
Pygame - Load Cursor
Pygame - The Sprite Module
Snake Game
Basic SQL intro
Database and RDBMS
Introduction to SQL
SQL Subset
RDBMS concepts
Installing Mysql on windows
Simple SQL queries
SQL Expression
SQL Operators
DDL Operations
DML Operations
Functions in SQL
Advanced SQL intro
SQL Subqueris
SQL Clause
SQL Joins
SQL Union
SQL Group by
SQL Views
SQL Indexes
SQL Transactions- Part1
SQL Transactions- Part1
SQL Transactions- Part2
SQL Transactions- Part2
SQL Transactions- Part3
SQL Transactions- Part3
SQL Transactions- Part4
SQL Transactions- Part4
SQL Transactions- Part5
SQL Transactions- Part5
Python Programming with MySQL intro
MySQL Database
Install MySQL Driver
Check if Database Exists
Python MySQL Create Table
Check if Table Exists
Primary Key
Python MySQL Insert Into Table
Insert Multiple Rows
Python MySQL Select From
Selecting Columns
Python MySQL Where
Python MySQL Order By
Python MYSQL Delete From By
Python MySQL Drop Table
Python MySQL Update Table
Python MySQL Limit
Python MySQL Join
What is Data Science
Who is Data Scientist?
Why Data Science
Data Science Pipeline
Data Science Tools
Data Science Tools (Proprietary)
Data Science Tools (Proprietary)
Introduction to Python Tools for Data Science
Introduction to Python Tools for Data Science
Anaconda Installation and Setup
Anaconda Installation and Setup
Virtual Environment Setup with Anaconda
Virtual Environment Setup with Anaconda
What is PYPI?
What is PYPI?
Installing Packages via Pip
Installing Packages via Pip
Jupyter Notebook
What is a Jupyter Notebook
What is a Jupyter Notebook
Getting familiar with Jupyter Notebook
Getting familiar with Jupyter Notebook
Jupyter Magic Commands
Jupyter Magic Commands
Case Studies
Covid 19 Data Science Application
Covid 19 Data Science Application
JP Morgan
JP Morgan
Netflix User Case
Netflix User Case
UPS
UPS
Walmart
Walmart
Future of Data Scientist
Future of Data Scientist
Vector Introduction
Vector Arithmetic
Dot and cross product
Applications of Vectors
Probability Introduction
Conditional probability
Multiplication Rule of probability
Baye’s Theorem
Statistics Introduction
Discrete and continuous mathematics
Set Theory
Applications of set theory
Relations and Functions
Introduction to numpys
Creating numpy arrays and dimensions
Indexing
Numpy Slicing
Numpy Arithmetic Operations
Other Numpy Arithmetic Operations
Broadcasting and comparison
Solving equation with numpy
Statistical Operation with numpy
Numpy Exercises - Part 1
Numpy Exercises - Part 2
Create and manipulate arrays using numpy
Create and manipulate arrays using numpy
Combining 2 arrays
Combining 2 arrays
Compare the elements of the two arrays
Compare the elements of the two arrays
Program to print 2d diagonal array.
Program to print 2d diagonal array.
Flattening a 2d array
Flattening a 2d array
Python program explaining numpy.size () function
Python program explaining numpy.size () function
Non-Zero Functions with numpy
Non-Zero Functions with numpy
Changing Data Type
Changing Data Type
Trace of matrix
Trace of matrix
Addition of two matrix
Addition of two matrix
Subtraction of Two Matrix
Subtraction of Two Matrix
Intro video
Introduction to pandas
Data structures in pandas
Reading files in Csv
Retrieving data
Analysing data
Querying and sorting
Working with dates
Grouping and aggregation
Merging data from multiple sources
Writing data back to files
Basic Plotting with Pandas
Pandas Exercise
How to create a DataFrame in Pandas from a dictionary of arrays/lists
How to create a DataFrame in Pandas from a dictionary of arrays/lists
Creating Dataframe from lists
Creating Dataframe from lists
Creating Dataframe from a list of tuples
Creating Dataframe from a list of tuples
Create a list of nested dictionaries
Create a list of nested dictionaries
Pandas to create a dataframe
Pandas to create a dataframe
Displays the values of each row and column using pandas
Displays the values of each row and column using pandas
How to read data from a string using the pandas read_csv() function
How to read data from a string using the pandas read_csv() function
How to reindex the rows of a Pandas DataFrame using the reindex() method
How to reindex the rows of a Pandas DataFrame using the reindex() method
Create two pandas Series using the NumPy linspace() function
Create two pandas Series using the NumPy linspace() function
Preprocess Data
Intro video
Intro video
Why preprocess
Why preprocess
Preprocessing Technique
Preprocessing Technique
Null and NaN
Null and NaN
Forward Fill
Forward Fill
Selecting data with conditionals
Selecting data with conditionals
Dropping columns/rows
Dropping columns/rows
Subset and index data
Subset and index data
Reshaping
Reshaping
Pivoting
Pivoting
Rank and sort data
Rank and sort data
Matplotlib
Intro video
Intro video
Introduction to Matplotlib
Introduction to Matplotlib
Linchart
Linchart
Improving style using seaborn
Improving style using seaborn
Scatter plot
Scatter plot
Histogram
Histogram
BarChart
BarChart
HeatMap
HeatMap
Intro video
EDA Introduction
Data Preparation and Cleaning
Exploratory Analysis
Asking and answering the questions Zale
Intro video
What is Artificial Intelligence?
The history of AI and its Development
Narrow or Weak AI
AI Techniques and Algorithms
Natural Language Processing
The Ethical and Societal Implications of AI
Relationship between AI and other Technologies
Robotics and its connection to AI
Difference between AI and ML
The Role of AI
Applications of AI
Use of AI in Social Media
Intro video
Numpy
Pandas
Matpotlib
SciKit-Learn
Tensorflow
Keras
PyTorche
The Natural Langauge Toolkit
XGBoost
CatBoost
OpenCV
Introduction to Machine Learning
Intro video
Intro video
Introduction of Machine Learning
Introduction of Machine Learning
Supervised Learning
Supervised Learning
Unsupervised Learning
Unsupervised Learning
Reinforcement Learning
Reinforcement Learning
Data Preprocessing
Data Preprocessing
Feature Extraction
Feature Extraction
Training data
Training data
Which model to use?
Which model to use?
Overfitting / Underfit
Overfitting / Underfit
Mathematical/Statistical Concepts for AI/ML
Intro video
Intro video
The necessity of Statistics for AI
The necessity of Statistics for AI
Vectors and Matrices
Vectors and Matrices
Graphs for AIML
Graphs for AIML
Sets for AIML
Sets for AIML
Probability distribution
Probability distribution
Hypothesis testing in AIML
Hypothesis testing in AIML
Markov model
Markov model
Clustering in AIML
Clustering in AIML
Kernal Functions in AIML
Kernal Functions in AIML
Intro video
Decision Tree
Decision Tree
Introduction to Supervised Learning
Classification
Regression
Naive Bayes
Linear Regression
Logistic Regression
Support Vector Machines (SVMs)
K Nearest Neighbor
Supervised Learning Applications
Challenges in Supervised Learning
Intro video
Introduction to Unsupervised Learning
Clustering in Unsupervised Learning
Exclusive and Overlapping Clustering
Hierarchical Clustering
Probabilistic Clustering
Association Rule
Dimensionality Reduction in Unsupervised Learning
Principal Component Analysis
Applications of Unsupervised Learning
Challenges in Unsupervised Learning
Intro video
What are Neural Networks
History
Types of Neural Network
Weights and Biases
How do Neural Networks Work? Part-1
How do Neural Networks Work? Part-2
Working of some common Neural Networks
Neural Network vs Deep Learning
Applications of Neural Network
Intro video
Define the problem and determine the goals of the model
Data preparations
Factors to consider while choosing model
Why to use CSV file?
Building the ML model (Logistic Regression)- P1
Building the ML model (Logistic Regression)- P2
Building the ML model (Logistic Regression)- P3
Building the ML model (Logistic Regression)- P4
Building the ML model (Logistic Regression)- P5
Building the ML model (Logistic Regression)- P6
Building the ML model (Logistic Regression)- P7
Building the ML model (Logistic Regression)- P8
Building the ML model (Logistic Regression)- P9
Building the ML model (Logistic Regression)- P10
Building the ML model (Logistic Regression)- P11
Intro video
Importance to evaluate the ML model
Accuracy of ML model
Precision measure of the ML model
Recall
F1 Score
Confusion Matrix
Techniques to improve accuracy
Summary of the course
Eligibility Criteria
• Basic knowledge of computers and keen desire to build skills in this field.
• Open to students, job seekers, and working professionals.
Official Certification
• Official MKCL KLiC Certificate upon successful completion of the course and evaluations.
Work-Centric Learning Approach
• Step 1: Learners are given an overview of the course and its connection to life and work
• Step 2: Learners are exposed to the specific tool(s) used in the course through the various real-life applications of the tool(s).
• Step 3: Learners are acquainted with the careers and the hierarchy of roles they can perform at workplaces after attaining increasing levels of mastery over the tool(s).
• Step 4: Learners are acquainted with the architecture of the tool or tool map so as to appreciate various parts of the tool, their functions, utility and inter-relations.
• Step 5: Learners are exposed to simple application development methodology by using the tool at the beginner’s level.
• Step 6: Learners perform the differential skills related to the use of the tool to improve the given ready-made industry-standard outputs.
• Step 7: Learners are engaged in appreciation of real-life case studies developed by the experts.
• Step 8: Learners are encouraged to proceed from appreciation to imitation of the experts.
• Step 9: After the imitation experience, they are required to improve the expert’s outputs so that they proceed from mere imitation to emulation.
• Step 10: Emulation is taken a level further from working with differential skills towards the visualization and creation of a complete output according to the requirements provided. (Long Assignments)
• Step 11: Understanding the requirements, communicating one’s own thoughts and presenting are important skills required in facing an interview for securing a work order/job. For instilling these skills, learners are presented with various subject-specific technical as well as HR-oriented questions and encouraged to answer them.
• Step 12: Finally, they develop the integral skills involving optimal methods and best practices to produce useful outputs right from scratch, publish them in their ePortfolio and thereby proceed from emulation to self-expression, from self-expression to self-confidence and from self-confidence to self-reliance and self-esteem!
Ready to start Python Programming Fundamentals with Data Science and AI-ML Unleashed?
Join our upcoming batch at ZICA Kalyani center with certified instructors.
MKCL Certified Program
Admissions Open 2026
Flexible Offline & Hybrid Batches
Course Overview
Duration:120 hours
Track:Software Development
Skill Level:Foundation
Language:English
Mode:Learn at ALC or at Home
Certificate:Official MKCL
Key Course Highlights:
By the end of the course, learners will be able to:
Demonstrate a thorough understanding of Python, including its history, features, and diverse applications across various industries.
Achieve proficiency in Python syntax, data types, and control flow structures, enabling the writing of efficient and effective Python code.
Implement memory management techniques and optimization strategies to improve code performance and resource utilization.
Work with various data structures such as lists, tuples, sets, and dictionaries, effectively manipulating them to solve programming problems.
Master advanced concepts in Python programming, including functions, iterators, generators, and decorators, to write sophisticated and efficient code.
Gain proficiency in module, package, and library management, enabling efficient organization and reuse of code in Python projects.
Possess skills for effective file handling, including reading, writing, and manipulation of data, as well as working with date and time modules.
Compare Python with other programming languages, understanding its strengths and weaknesses in relation to others.
Become familiar with common Python libraries and their applications in areas such as mathematics, file handling, and data manipulation, enhancing the ability to leverage existing resources.
Develop practical coding skills through hands-on exercises and projects, applying knowledge to solve real-world problems effectively.
Discover proficiency in Python, enabling the writing of well-structured and efficient code.
Make use of GUI development using Tkinter and PyQt5, creating user-friendly and interactive applications.
Build effective exception handling, logging, and debugging strategies, ensuring robust and error-free code.
Utilize JSON data, utilizing pickling for serialization, and manipulating data effectively.
Utilize the concepts of multithreading, multitasking, and synchronization, demonstrating expertise in concurrent programming.
Build Python’s Collections module to manipulate data efficiently, showcasing skills in handling diverse data structures.
Make use of OOP principles effectively, organizing code using inheritance, polymorphism, encapsulation, and abstraction.
Construct mini projects, demonstrating the application of learned concepts in real-world scenarios.
Develop proficiency in SQL basics, advanced concepts, and Python’s integration with MySQL for effective database interaction.
Discover advanced skills in GUI development with Tkinter and PyQt5, showcasing the ability to create complex and functional applications.
Build proficiency in data science concepts, tools, and applications.
Effectively utilize tools like Anaconda, Jupyter Notebooks, and PyPI in real-world data science projects.
Make use of mathematical concepts in practical data science scenarios, enhancing analytical skills.
Construct efficient numerical operations and data manipulation tasks using NumPy.
Examine and Manipulate data effectively using Pandas for insightful decision-making.
Build data preprocessing techniques to handle null values, reshape data, and perform conditional selections.
Produce clear and meaningful visualizations using Matplotlib for effective exploratory data analysis.
Compare real-world case studies and apply data science techniques to address complex business challenges.
Distinguish the Foundation of artificial intelligence and its ethical implications in societal contexts.
Develop a solid understanding of machine learning fundamentals, preparing for advanced applications and scenarios.