100 Days of Python
Welcome to the first post in the “100 Days of Python” series!
As the name suggests, we will be exploring the Python programming language over the next 100 days. We will be starting from the complete beginner level to make sure people without any programming background can get started and follow along. We will gradually cover more advanced concepts such as task automation, data visualization, and web scraping and perform some basic data-science experiments.
Python is a popular, general-purpose programming language known for its simplicity, readability, and flexibility. It is used in a wide range of applications, including web development, data analysis, scientific computing, and artificial intelligence.
Here are a few reasons why one might start learning Python:
- Python is easy to learn: Its simple syntax and readable code make it a great first programming language for beginners.
- Python is versatile: It can be used for a wide range of tasks, from web development to data analysis to artificial intelligence.
- Python has a large, active community: There are countless resources available online for learning Python, and the community is always working on new libraries and tools to make it even better.
Along with the concepts, the blog posts will also include some practical exercises with links to resources where one might write code and learn by doing.
The list of topics covered will be updated on a rolling basis every day:
- Printing values in Python
- Getting input from users in Python
- Arithmetic expressions and numeric variables in Python
- Boolean variables and boolean arithmetic in Python
- Conditions in Python — if/else
- Nested conditions in Python
- Floating point numbers
- Augmented assignments (+=, -=, etc.)
- Strings
- How to format text and what are f-strings in Python?
- Lists
- What is the range() function in Python?
- For loops
- While loops
- break and continue
- How Python almost had another keyword
- 5 most useful string casing methods in Python
- 5 most useful string modifying methods in Python
- Splitting and Joining strings in Python
- 10 most useful list methods in Python
- Nested loops in Python
- Python List Comprehension — Deep Dive
- Tuples in Python
- Sets in Python
- Dictionaries in Python
- Why Python Does Not Have Tuple Comprehension?
- Functions in Python
- What are Multiple Return Values Actually in Python?
- 4 Types of Function Arguments in Python that You Might Not Know About
- Python Variable Scope
- Enumerate and Zip Functions in Python
- Lambda Functions in Python: A Comprehensive Guide to Understanding and Using Anonymous Functions
- Higher Order Functions in Python
- Working With Files in Python
- With Statement in Python
- Automating Data Cleaning With Python
- Positional-only and Keyword-only Arguments in Python
- Does Python Have Pass-by-Value VS Pass-by-Reference Variables?
- Recursion in Python
- What is Stack Overflow Really?
- Regular Expressions in Python
- Regular Expressions — Grouping and Backreferences
- Python Classes and Objects
- Mastering Private and Protected Fields in Python Classes: A Complete Tutorial
- What are Magic Methods in Python Classes?
- Inheritance in Python
- Method Overriding in Python
- Multiple Inheritance in Python
- Type Hints and Type Checking in Python
- How to Create Custom Generic Types in Python
- Abstract Classes in Python
- Data Classes in Python
- Properties in Python
- Static Methods in Python
- Implementing Custom Decorator Functions in Python
- Class Decorators in Python
- Python — Exception Handling
- Exception Hierarchy in Python
- Custom Exceptions in Python — Creating Custom Exceptions
- Iterators in Python
- Generators in Python
- Iterables in Python
- 10 Most Useful Itertools Methods
- Glob — Working with Files in Python
- Pathlib — The OOP Approach of Working with File System in Python
- Creating Custom Context Managers in Python
- All the Ways You Can Use Context Managers in Python
- Multithreading in Python
- Synchronizing Threads in Python With Locks
- Synchronizing Threads in Python With Semaphores
- Synchronizing Threads in Python With Barriers
- Multiprocessing in Python
- What Is the Python Global Interpreter Lock (GIL)?
- Multithreading VS Multiprocessing in Python
- Thread Pools and Process Pools in Python
- Async Await in Python — Asyncio Deep Dive
- Async with Expression in Python
- Making Requests With asyncio in Python
- Working With Databases Using asyncio in Python — SQLAlchemy Example
- Multithreading VS Multiprocessing VS Asyncio in Python
- How Modules Actually Work in Python and How to Create Your Own Custom Module
- What are Packages in Python and What is the Role of __init__.py files?
- Working With Third-Party Libraries in Python
- Virtual Environments in Python
- Unit Testing in Python with Pytest
- Test Coverage in Python with Pytest
- Mocking and Fixtures in Python
- Web Scraping with Scrapy in Python
- Working with Excel Sheets and CSV Files Using Pandas for Data Processing
- Working With XML and JSON Data in Python
- Mastering Image Processing in Python with Scikit-Image — A Comprehensive Guide to Image Processing Techniques
- Mastering NumPy in Python for Numerical Computations: A Comprehensive Tutorial
- Mastering Data Analysis with Pandas
- Machine Learning in Python with Scikit-Learn
- Creating an Interactive Website with Streamlit in Python
- Creating Beautiful Data Visualizations with Plotly and Dash
- Creating Custom ChatGPT Using the OpenAI API
- Time Series Analysis with Python using Prophet
- Developing Your First Flask Application in Python
- The Grand Finale: Wrapping Up Our 100 Days of Python Journey
So whether you’re a complete beginner or an experienced programmer looking to learn Python, I hope you’ll join us on this journey!
What’s next?
- If you found these stories valuable, please consider clapping multiple times (this really helps a lot!)
- Hands-on Practice: Free Introductory Python Course
- Advanced Practice: Free Intermediate Python Course