Skip to content

taco0cat/python-projects

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🐍 Python Projects & Scripts

Python FreeCodeCamp GitHub last commit

A collection of Python scripts and CLI tools developed as part of the FreeCodeCamp Scientific Computing with Python curriculum. This repository documents my progress in algorithms, data validation, and basic cryptography.

📋 Table of Contents


📂 Project List

ID Project Name Description Key Concepts
01 Caesar Cipher Encryption tool that shifts letters by a fixed amount. Cryptography, Strings
02 Pin Extractor Decodes a hidden PIN using a word-length algorithm. Steganography, List Indexing
03 Vigenère Cipher Advanced encryption using a keyword-based shift. Polyalphabetic Ciphers, Modulo
04 Luhn Algorithm Validates credit card numbers using the Luhn formula. Checksums, Data Verification
05 Expense Tracker Tracks expenses using functional programming concepts. Lambda Functions, Filtering
06 Snake Case Converter Utility to convert PascalCase/CamelCase to snake_case. String Manipulation, Regex
07 Square Root Calc Calculates square roots without libraries. Bisection Method, Algorithms
08 Password Generator Generates strong passwords using Regex constraints. Regex, Secrets Module
Cert Arithmetic Formatter (First Certification Project) Formats arithmetic problems vertically. String Formatting, Logic

⚙️ How to Run

Ensure you have Python 3.x installed.

  1. Clone the repository:
    git clone [https://github.com/taco0cat/python-projects.git](https://github.com/taco0cat/python-projects.git)
  2. Navigate to the directory:
    cd python-projects
  3. Run a script: Note: Use quotes if the filename has spaces.
    python "08 - Password Generator using RegEx.py"

🧠 Key Concepts

🔐 Cryptography (Caesar & Vigenère)

Starting with the Caesar Cipher (simple substitution), I progressed to the Vigenère Cipher, which uses a keyword to create a polyalphabetic shift. This makes the encryption much stronger against frequency analysis attacks.

🛡️ Regular Expressions

The Password Generator uses the secrets module for cryptographically strong random selection, combined with Regular Expressions (Regex) to strictly enforce user-defined constraints (e.g., "must contain at least 2 special characters").

💳 Luhn Algorithm

Implemented the industry-standard Luhn Algorithm (Mod 10), used globally to validate identification numbers like credit cards and IMEI numbers. It demonstrates how real-world systems prevent accidental data entry errors.

📉 Bisection Method

The Square Root Calculator moves beyond simple math functions by implementing the Bisection Method, a root-finding method that repeatedly bisects an interval and then selects a sub-interval in which a root must lie.

⚡ Functional Programming

The Expense Tracker utilizes Python's functional programming features, specifically lambda functions, to handle data filtering and processing concisely.


🛡️ License

This project is open source. Curriculum Source: Scientific Computing with Python


Created by taco0cat

About

Automation scripts, CLI tools, and algorithms focusing on data logic and cryptography.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages