my python practice repo. basics, algorithms, little scripts i actually use, and some small projects. everything runs with plain python 3, no installs needed.
strings, lists, dicts/sets, comprehensions, functions and closures, files (csv/json/pathlib), exceptions and context managers, classes and dunder methods, generators, decorators. each file has a __main__ block you can just run.
searching (binary search variations), sorting from scratch (bubble, selection, insertion, merge, quick), two pointers / sliding window, recursion and backtracking (subsets, permutations, hanoi, n-queens), and a linked list.
word_counter.py- word/line stats and most common words in a filepassword_generator.py- random passwords + passphrases with a strength checkfile_organizer.py- sorts a messy downloads folder into subfolders (has--dry-run)unit_converter.py- length, weight, temperaturecsv_summary.py- mean/median/std for every numeric column, no pandas
cli_todo- todo list in the terminal, saves to json, has unit tests (python -m unittest)expense_tracker- log expenses to csv and print monthly summaries with little bar chartshangman- terminal hangman
second round, more "real world" python:
typing_dataclasses.py- type hints, dataclasses (ordering, frozen), enums, protocols, genericsregex_practice.py- emails, phone numbers, dates, log parsing, masking card numbersasync_basics.py- asyncio gather, semaphores, timeouts, a producer/consumer queuesqlite_practice.py- sqlite3 with parameterized queries and transactions
flashcards- spaced repetition flashcards (simplified anki sm-2 algorithm)