Welcome to the "100 Days of Code" Python course repository! This repository is designed to accompany your journey through the "100 Days of Code" challenge, where you'll be committing to code for at least an hour every day for 100 days to improve your Python programming skills.
The "100 Days of Code" Python course is a structured learning program that provides daily coding exercises, projects, and resources to help you become proficient in Python programming. Whether you're a complete beginner or an experienced developer looking to sharpen your skills, this course is designed to accommodate learners of all levels.
The course is divided into 100 days, with each day focusing on a specific topic, concept, or project related to Python programming. Each day, you'll receive:
In day 1, I learned about printing,commenting,debugging,string manipulation,variables,input function.
In day 2, I learned about the data types in python,type casting and type conversion and f- strings.
In day 3, I learned about the conditional statements, logical operators, code blocks.
In day 4, I learned about Python lists[],Randomization.
In day 5, I learned about Loops(for), Range()
In day 6, I learned about functions, code blocks and while loops.
In day 7, I learned more about functions, flow charts.
In day 8, I learned about Functions with inputs, parameters, arguments, positional arguments, round(),ceil()
In day 9, I learned about Nesting and Dictionaries in Python.
On day 10, I learned about Python functions that return values using the 'return' keyword, enhancing code modularity and reusability.
On day 11, I successfully crafted a Blackjack project, leveraging all my existing knowledge to create an engaging and functional application.
On day 12, I delved into the concepts of local and global variables, gaining insights into the significance of constants and their role in maintaining data integrity within my codebase.
On day 13, I focused on debugging techniques and learned valuable tips for resolving errors efficiently. While I didn't work on a specific project, I gained essential skills to troubleshoot and fix issues in my code effectively.
On day 14, I applied my recent knowledge to create an engaging Higher Lower game. It's a fun and rewarding project that showcases my progress and skills.
On day 15, I focused on configuring my local development environment, essential for efficient coding and testing processes. This involved installing necessary tools and configuring dependencies to mirror the production environment closely.
On day 16, I explored Object-Oriented Programming (OOP) concepts, diving into classes, objects, attributes, and methods. Additionally, I experimented with Turtle graphics, a beginner-friendly library for creating visual designs in Python. This hands-on session deepened my understanding of fundamental programming paradigms and sparked creativity in visual programming.
On day 17, I dived into object-oriented programming basics, covering class creation, object instantiation, constructors, attributes, and methods. Understanding these concepts lays the foundation for structuring and manipulating data effectively in code.
On day 18, I explored the Turtle library in Python, where I learned to control a turtleโs movement to create fun, interactive graphics. I practiced using commands like forward(), right(), and penup() to draw various shapes and patterns. Along the way, I experimented with loops to create repeating designs and customized colors for more creative visual effects. Diving into Turtle made coding feel more intuitive and enjoyable by visually representing the logic behind each step!
On day 19, I delved deeper into Turtle graphics, focusing on more advanced features. I explored how to handle event listeners to make interactive drawings, learned to manage state within the turtle environment, and worked with multiple turtle instances to create complex, synchronized designs. This added a whole new layer of functionality and creativity to my Python projects!
On day 20, I started building the classic Snake game in Python! ๐ฎ I worked on Part 1, where I created the snake's body, implemented smooth snake movement, and added controls to change its direction. I also learned about the tracer() method to optimize screen updates, making the game's visuals much smoother. Excited to keep building this out!
On day 21, I wrapped up Part 2 of the Snake game, completing the core mechanics! ๐น๏ธ Alongside this, I dived into class inheritance to better structure my code and worked with list slicing to manipulate the snake's body efficiently. It was exciting to see everything come together and finish the game!
On day 22, I built the classic Pong game! ๐๐ฎ Learned how to manage game objects, detect collisions, and handle user input using Python's turtle module.
On day 23, I completed the Turtle Crossing Road capstone project! ๐ข๐ฆ Developed a fun game using Python's turtle module, where the player navigates a turtle across the road, dodging traffic. It was exciting to apply concepts like OOP and collision detection! ๐๐จ
On dat 24, I explored Python file handlingโlearned about absolute/relative paths, directories, and how to open, write, and close files. ๐๐ป Put the knowledge into practice by creating a Mail Merge project, automating personalized mail generation. Super useful skills! โ๏ธ๐
On day 25, I learned how to work with CSV files and explored data analysis using the Pandas library. ๐ผ๐ Created DataFrames to manage and analyze data efficiently. Wrapped it up with a fun projectโUS State Gameโcombining everything learned! ๐ฎ๐
On day 26, I delved into list comprehensions and dictionary comprehensions, making my code cleaner and more efficient! ๐โจ Developed a NATO Alphabet Game to reinforce my learning in a fun way. ๐ฎ๐ค Loving the journey!
On day 27, I learned how to create GUIs using the tkinter library! ๐จ๐ฅ๏ธ Also explored the power of *args and **kwargs in Python. Wrapped up the day by building a Mile to Kilometer Converter GUI.
On day 28, I built a Pomodoro Timer using the tkinter library! ๐ โฒ๏ธ It was a great way to practice creating interactive GUIs while implementing the Pomodoro technique for productivity.
On day 29, I built a Password Manager GUI app using the tkinter library! ๐๐ป It was exciting to create a functional tool for securely storing and managing passwords. Learning and growing every day! ๐
On day 30,I enhanced my Password Manager GUI app by adding a search button to retrieve email and password for specific websites! ๐๐ Learned how to store data using JSON files and handled errors gracefully with try and except. ๐โ๏ธ
On day 31,I completed the Flash Card Game capstone project to learn French words! ๐ซ๐ท๐ด Designed an interactive app using tkinter for vocabulary building. Itโs been so rewarding to combine creativity and coding! ๐โจ