Giter Site home page Giter Site logo

dbeniamin / 1-100_pythoncode_challenge Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 8.74 MB

1-100 Python Code Challenge by Dr. Angela Yu, with various projects along the way

License: MIT License

Python 93.35% HTML 6.65%
python python3 100-days-of-code angela-yu-course coding-challenge python-3 pythoncoding pythonprogramming pythonprojects

1-100_pythoncode_challenge's Introduction

1-100_Days_Python_Code_Challenge

This project contains the lectures and projects from the course by Dr. Angela Yu. Practice projects and comments that are relevant to myself and to my learning process.

Introduction:

This challenge is designed to help you enhance your Python programming skills over the course of 100 days. Whether you are a beginner looking to build a solid foundation or an experienced developer aiming to deepen your Python knowledge, this challenge is tailored for everyone. Each day, you'll find a new coding task or project in its dedicated folder. The challenges are crafted to cover a wide range of Python concepts, from basic syntax to advanced topics like web development, data analysis, and more.

Key Features:

  • Diverse Coding Challenges: Explore a wide range of Python programming concepts, from fundamental syntax to advanced topics and projects like web development, data analysis, and more.
  • Progressive Difficulty: Start with beginner-friendly tasks and gradually advance to more complex challenges.
  • Real-world Applications: Apply your Python skills to real-world scenarios by working on projects that simulate practical coding situations.
  • Flexibility and Adaptability: Tailor the challenge to your specific interests and goals.

Project Structure:

day specific .py files

  • day specific .py files. These contain the daily course with personal comments in areas that i deemed necessary
  • day specific project folders. These contain the day specific projects with all the files and the structure of the project.

Requirements:

Please make sure that the required libraries and frameworks are installed for proper project functionality.

Installation:

  1. Fork this repository:

    Click on the "Fork" button at the top-right of this page to create your own copy of these Selenium automation scripts.

  2. Clone your forked repository:

    Copy and run the desired files or project folders.

Usage:

day specific .py files

To use the day specific .py files:

  1. Copy the content of day_xx.py .
  2. Paste the content into a new Python file (e.g., my_day_xx.py).
  3. Save the file and look over / run it.

Feel free to modify and adapt the files based on your specific requirements.

day specific project folders

To use the day specific project folders:

  1. Copy the content of day xx - project name folder.
  2. Paste the content into a new folder.
  3. Save the contents run main.py.
  4. Feel free to open and analyze other files that are within the project folder.

You can customize the files / folders as needed for your own desired usage. Additionally, ensure you have the required dependencies installed.

Feel free to explore the files and folders in the repository and adapt them to suit your needs.

Description:

day specific .py : contain several explanations and practical examples of the topic for the specified day

day specific project folder : contains a project that is build using topics and methods used during the day, along with previously gained knowledge.

Change Log:

09.01.2024 -> day 07 - Hangman - Contains the well known Hangman game with a personalized list of words and some ASCII art that is displayed while you play the game.

  • Chose a random word, compare the letters and fill in the slots if the letter is contained in the given word.
  • Have a game loop that allows the user to guess until the word is guessed or the number of lives are depleted.
  • Have a visual representation of the progression, i.e. letters remaining and lives lost so far.

15.01.2024 -> day 08 - Cesar Cypher - Contains the Cesar Cypher software with a few variants that are included in the repository.

  • Taking a common phrase and shifting the characters to make the phrase encrypted.
  • Provide the shift amount to be able to decrypt the phrase.
  • Compare initial phrase, encrypted and decrypted answer.

18.01.2024 -> day 09 - Silent Auction - Contain the Silent Auction application used to log bids without making them public.

  • Entering and saving a bid for each person.
  • Clear the screen, so the previous bid would not be visible.
  • Compare bids and get the highest winning bid.

24.01.2024 -> day 10 - Calculator - Contains the Calculator application used for basic math.

  • Focused on creating functions and using them within a while loop and practice loop to reset the program if the user enters a specific key.
  • Provide some graphical references for the operations.
  • Store the previous result and continue operations with it.

25.01.2024 -> day 11 - Blackjack - Contains the Blackjack application to play against the computer by respecting a set of rules.

  • Focused on calculating cards and switching the A from 11 to 1 based on the dealt hand.
  • Make the Calculator to respect a set of rules.
  • Random generate and deal cards to the Player and the Calculator, and save the dealt values.

31.01.2024 -> day 14 - Higher Lower - Game - Guessing game that will randomize the A and B at start.

  • B option will become A option and B will get another random generated option.
  • Counting the score of the player.
  • Personal twist with Football stadiums instead of the course template.

06.02.2024 -> day 16 - Coffee Machine OOP - Contains the Coffee Machine app in an OOP style.

  • Focused on using the OOP style to address various parts of the Coffee Machine.

07.02.2024 -> day 16 - Quiz Game OOP - Contains the Quiz Game app in an OOP style.

  • Focused on using OOP and importing from several files.
  • Saving the score and progress along the way to provide the user with a sense of progression.

12.02.2024 -> day 18 - Hirst Painting - Contains a Hirst like painting program.

  • focused on extracting colors from a predefined image
  • randomizes the extracted colors and creates a Hirst like painting with a random color.
  • the app uses turtle module.

13.02.2024 -> day 19 - Turtle Race - Contains a Turtle race program.

  • focused on generating turtles and make them race at random speeds
  • requesting input from the user and calculating the winner vs user input.

14.02.2024 -> day 20-21 - Snake Game - Contains the well known Snake game made using Turtle module. Given the complexity of the project, this is listed as a two-day project.

  • OOP structure focused on break down the game specific functions.
  • Score tracking, speed increasing and collision detections are a few features of the app.

15.02.2024 -> day 22 - Pong Game - Contains the well known Pong game made using Turtle module.

  • OOP structure focused on break down the game specific functions and elements.
  • Score tracking, speed increasing and collision detections are a few features of the app.
  • Made to be played by Two players.

19.02.2024 -> day 23 - Turtle Crossing - Contains a Turtle Crossing app made using Turtle module.

  • OOP structure focused on break down the app specific functions and elements.
  • Score tracking, speed increasing and collision detections are a few features of the app.
  • Turtle set-up to move forward, difficulty increases with every cleared level.

21.02.2024 -> day 24 - Mail Merge - Contains a Mail Merging app.

  • Focused on file paths and folder accessing to get, handle and update the data.
  • Replacing a filler in a template with names from a different list.
  • Auto generating personalized (name based) mails.

26.02.2024 -> day 25 - CSV files - Contains a script used to count the squirrels in Central Park, NY.

  • Focused on file handling and data accessing.
  • Extracting, saving and updating the data in various CSV files.

28.02.2024 -> day 26 - NATO Alphabet - Contains a script used to convert letters from an input word.

  • Converts a word in to NATO alphabet notations.

12.03.2024 -> day 27 - Miles to KM converter - Contains a script used to convert miles to KM.

  • Uses a GUI based script that allows user input.
  • Returns the result to the user and binds function to a button.

13.03.2024 -> day 28 - Pomodoro app - Contains the Pomodoro app.

  • Uses a GUI based app that allows to track learning time based on Pomodoro principles.
  • Using the basic app design the user can also add sound notifications.

14.03.2024 -> day 25 - Romania County Game - Contains guess the county app made specifically for Romania.

  • The folder has 2 .py files one is a course specific and another one is the Romania County Game.
  • Has additionally included a high score file and a timer that is visible to the player while also counting down.

18.03.2024 -> day 29 - Password Manager - Pass Manager is an app made to store various details.

  • GUI app that helps keep track of passwords, usernames, and websites.
  • Can be transformed to a .exe and can run locally without the need for python environment.
  • 20.03.2024 - updated with a personal version and an oop version

25.03.2024 -> day 31 - Capstone Project - Flash Card App that can be used to learn other languages.

  • GUI app that helps learning words in other languages, focused around working with diffrent files.
  • Flash green when the answer is correct and red when it is wrong.

26.03.2024 -> day 32_1 - SMTP merger - Script to send emails that pick a random quote.

  • Made using smtp and file handling.

27.03.2024 -> day 32 - Automated Birthday Wisher - Script to automate birthday wishes.

  • Made using the SMTP module and Pandas to handle the file navigation.
  • Picks the email template from a db and sends the birthday wishes based on the date and time extracted when the script runs.

02.04.2024 -> day 33_1 - Kanye Quote Machiner - Fun GUI app that generates random quotes.

  • Made by pulling API data.
  • GUI designed in tkinter with specific elements.

03.04.2024 -> day 33_2 - ISS overhead notifier - Script that will notify you if the ISS is above you.

  • Made by pulling API data.
  • Mixing various modules that have been used so far.

04.04.2024 -> day 34 - Trivia GUI Quizz App - App that random generates a quiz.

  • Uses API data and interactions.
  • OOP structure to the application.
  • GUI designed with tkinter module.

10.04.2024 -> day 36 - Stock Tracking App - App that tracks the price of stocks and pulls the news for that specific company.

  • Uses API data and interactions.
  • Notification module with sms text and twilio API.

15.04.2024 -> day 37 - Habit Tracker - App that tracks habbits.

  • Uses API data and interactions.
  • API calls detailed in the main file.

17.04.2024 -> day 38 - Workout Tracker with GoogleSheets - App that tracks Workouts and results.

  • Uses API data and interactions.
  • Early example of language model transfered to data sheet and interpreed by an API.

22.04.2024 -> day 39 - Capstone - Cheap Flight Finder - App that finds cheap flights based on the user's requests.

  • Uses API data and interactions to pull information, compare, and generate a notification if conditions are met.

25.04.2024 -> day 40 - Flight Deals - Group Email - Scaled up the Cheap Flight Finder project.

  • Added a list of people that can get notified by adding e-mails.
  • OOP structure, focused and API calls, managing the notifications.

30.04.2024 -> day 41 - HTML Introduction - Introductions to HTML structure.

  • Several exercises are based on HTML structure and implementation.

02.05.2024 -> day 42 - HTML Intermediate - Intermediate level of HTML structure and design.

  • Several exercises are based on intermediate level of HTML structure and implementation.

Contributing:

Contributions are welcome! Feel free to contribute to the 100 Days of Code Challenge project.

If you have suggestions, ideas, or improvements, please don't hesitate.

Thank you for considering contributing!

License

MIT License

1-100_pythoncode_challenge's People

Contributors

dbeniamin avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.