This repository contains python codes written in jupyter notebooks. I have written this notebook to help students learn Python efficiently, focusing on practicality and knowledge and not collage attendance (85% in my case) which most of us (students) hate.
In this notebook or a series of notebooks covered in almost 13 weeks I have demonstrated use of core Python along with OPPs concepts and some more advanced concepts, emphasizing on beginner-friendly without compromising on quality code along with tons of comments and in-notebook documentation to help you along the code.
Library such as Pandas Matplotlib and NumPy are also covered.
All my fiends are requested to not just go and copy the code, but to actually practice questions. Yes, some good questions are also included in the notebook along with the solution code.
My Professors and instructors
Course Faculty
Satyadev Nandakumar,
Associate Professor,
Department of Computer Science & Engineering,
IIT Kanpur
Inter IIT Exchange Faculty in IIT Palakkad
Course Instructors
Karthik Thiagarajan (BTech, IIT Madras)
Kubra Kadeejathil (B.tech(Hons),LBSCEK)
Livin Nector (B.E.(Hons), Annamalai University)
A Quick Introduction to Variables
Variables and Input Statement
Variables and Literals
Data Types 1
Data Types 2
Operators and Expressions 1
Operators and Expressions 2
Introduction to Strings
More on Strings
Introduction
Variables : A Programmer's Perspective
Variables Revisited: Dynamic Typing
More on Variables, Operators and Expressions
Escape characters and types of quotes
String Methods
An Interesting Cipher: More on Strings
Introduction to the if statement
Tutorial on if, else and else-if (elif) conditions
Introduction to "import library"
Different ways to import a library
Introduction to while loop
While to Compute Factorial
Tutorial on while loop
Introduction to for loop
for loop to add the first n numbers
for loop for multiplication tables
More on range and for loop without range
Formatted Printing
Tutorial on for loop and difference between while loop and for loop
Nested for loop
Tutorial on nested loops
break, continue and pass
Warmup with Lists
Birthday Paradox
Naive Search in a List
The Obvious Sort
Dot Product
Matrix Addition
Matrix Multiplication - 1
Matrix Multiplication - 2
Introduction to Functions
More Examples of Functions
Sorting using Functions
Matrix Multiplication using Functions
Recursion - An Illustration
Types of Function Arguments
Scope of Variables
Types of Functions
Tutorial on functions
Lists and Sets
Dictionaries
Tuples
More on Lists
More on Tuples
More on Dictionaries
More on Sets
Collections Summary
Assignment 1
Assignment 2
Assignment 3
Assignment 4
Introduction to the week and introduction to recursion
Recursion: a simple question
Recursion: find 0 in a list
Sorting Recursively
Introduction to Binary Search
Warm up for Binary Search
Binary Search Implementation
Binary Search Recursion Way
Introduction to File Handling
Reading and Writing to a File
Big text file handling
Very big files - a tip
Caesar Cipher
File handling, Genetic Sequences
Why Pandas
Pandas Series, DataFrame and more
Introduction to Object Oriented Programming
Classes and Objects
Attributes and Methods
Inheritance and Method Overriding
Introduction to Numpy library
Introduction to Matplotlib library
Introduction
Exception handling
Functional Programming (Part 1)
Functional Programming (Part 2)
Functional Programming (Part 3)
Programming Assignment 1
Programming Assignment 2
Programming Assignment 3
Programming Assignment 4
Programming Assignment 5
Programming Assignment 6
Programming Assignment 7
Programming Assignment 8
Programming Assignment 9
Programming Assignment 10
clone this repository
git clone https://github.com/TheFatCow/Python.git
- Install Pandas
(use any one of the command biven below)
pip install pandas
pip3 install pandas
- Install Matplotlib
pip install matplotlib
- Install Numpy
pip install numpy
- Python 3
- Matplotlib
- Pandas
- Numpy
- Jupyter Notebook