Beginner Project: This week's beginner project involves creating a simple command-line calculator. Your calculator should be able to perform basic arithmetic operations like addition, subtraction, multiplication, and division. The user should input the numbers and the operation as command-line arguments.
Beginner Stretch Goal: Enhance your calculator by adding support for more complex operations, such as exponentiation, square roots, and trigonometric functions.
Intermediate Project: Your intermediate project is to create a Python script that monitors a specified folder for changes. Whenever a new file is added or an existing file is modified, the script should log the event (e.g., filename, event type, and timestamp) to a separate file.
Intermediate Stretch Goal: Expand your folder monitoring script by adding an email notification feature. Whenever a change is detected, send an email to a specified address with details about the event.
Advanced Project: This week's advanced project is to create a multi-threaded web server using Python's built-in http.server
module. Your web server should be able to handle multiple simultaneous client connections and serve static files (e.g., HTML, CSS, JavaScript, images) from a specified directory.
Advanced Stretch Goal: Enhance your web server by adding support for serving dynamic content. Implement a simple templating engine that allows you to serve HTML pages with embedded Python code, similar to how PHP or ASP.NET works.
Chris Franklin
Weekly Python