This repo contains all of the code I wrote while learning Python. I started learning Python in 2023, and I'm still learning today. I've learned a lot from following tutorials online , Courses and reading atricles.
I hope you enjoy the codes! It's a mix of simple and complex tutorials.
Section | Description |
---|---|
Python Basics | This section covers the basics of Python, such as variables, data types, operators, control flow, and functions. |
OOP in Python | This section covers object-oriented programming (OOP) in Python, such as classes, objects, inheritance, and polymorphism. |
Hackerrank Challenges on Python | This section contains a collection of Hackerrank challenges that you can solve to test your Python skills. |
Database with Python (SQLite) | This section covers how to use Python to interact with a SQLite database. |
Numpy | This section covers the NumPy library, which provides a high-performance array data type and a wide range of mathematical functions. |
Pandas | This section covers the Pandas library, which provides a high-level interface for data analysis and manipulation. |
Matplotlib | This section covers the Matplotlib library, which is used for creating static, animated, and interactive visualizations. |
Seaborn | This section covers the Seaborn library, which is a Python visualization library based on Matplotlib. |
This section covers the basics of using Python.
- Containers (List, Tuple, Set, Dictionary)
- Loops
- Functions
- Recursion
- Lambda and Built-in Functions
- File Handling
- Exception Handling
- Type Hinting
- Generators and Decorators
- Modules and Date-Time
- Operators (Boolean, Assignment, Logical)
- Regex
- Strings and Numbers
This section covers the basics of using OOP inPython
- OOP (Class, Instance Methods & Attributes, Class Methods, Static Method, Magic Method)
- Setter, Getter & Property Decorator
- Polymorphism & Encapsulation
- Inheritance & Multiple Inheritance & Overriding & MRO
- Abstract Base Class
- Elzero Web School: Object-Oriented Programming in Python
- DataCamp: Object-Oriented Programming in Python
This section contains my solutions to some of the Hackerrank challenges in Python.
- Any or All
- Athlete Sort
- Capitalize!
- Company Logo
- Compress the String!
- Dealing with Complex Numbers
- Default Arguments
- DefaultDict Tutorial
- Exceptions
- Find Angle MBC
- Incorrect Regex
- Input()
- No Idea!
- The Captain's Room
- Time Delta
- Triangle Quest 2
- Triangle Quest
- Words Score
- Write a function
- ginortS
- itertools.permutations()
- itertools.product()
This is just a small selection of the challenges I have solved. You can find the full list of my solutions on Hackerrank.
I hope you find these solutions helpful.
This section covers the basics of using Python to interact with a SQLite database.
- Create Database
- Create Table
- Insert
- Retrieve
- Update
- Delete
- Practice1
- Skills Application
This section covers the basics of the NumPy library, which provides a high-performance array data type and a wide range of mathematical functions.
- Data types
- Arithmetic and Useful Operations
- Array Shape and Reshape
- Comparison between list and array
- Slicing and indexing
- Notes from Kaggle Numpy Tutorial
This section covers the basics of the Pandas library, which provides a high-level interface for data analysis and manipulation and by using Jupyter.
- Series
- DataFrame
- Indexing and Selection
- Conditional Selection & Assigning Data
- Combining data
- Handling Missing Values
- Aggregation functions & group-by
- Pivot Table
- Time series analysis
In this section, I've gained valuable insights into the Matplotlib library, a widely-used data visualization tool in Python. Through this learning journey, I've acquired the skills to create a variety of informative and visually appealing plots.
- Drawing Plots
- Bar Chart
- Pie Chart
- Histogram Charts
- Scatter Plots
- Subplots
I've learned how to create different types of plots using Matplotlib, which is crucial for visually representing data patterns and trends.
Understanding how to construct bar charts has allowed me to effectively display and compare categorical data.
Pie charts are now a part of my visualization toolkit, enabling me to showcase the proportions of different categories in a dataset.
Histograms are an essential tool for illustrating the distribution of continuous data, providing insights into the data's spread and central tendencies.
Scatter plots have proven invaluable in showcasing relationships and correlations between two continuous variables.
Learning how to create subplots within a single figure has enabled me to display multiple plots in a structured and organized manner.
- Line Plots
- Scatter Plots
- Regression Plots
- Distribution Plots
In this section, I've explored the Seaborn library in Python, which is a powerful tool for data visualization and exploration. Seaborn simplifies the process of creating visually appealing and informative plots.
I learned the art of creating line plots with Seaborn. Line plots are particularly useful for visualizing trends and patterns in data over time.
Seaborn's scatter plots enabled me to explore relationships between two variables, highlighting patterns and correlations within the data.
Regression plots allowed me to visualize the linear relationship between variables, making it easier to understand correlations and fit regression models.
I learned to create distribution plots that provide insights into the distribution of data, whether it's a histogram, kernel density estimate, or combination of both.