Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

194 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Python Journey

My daily Python learning projects.

Progress :

  • Day 1: Rock Paper Scissors game
  • Day 2: Word Analyzer
  • Day 3: Grocery List Manager
  • Day 4: Tuples & Sets
  • Day 5: Contact Book
  • Day 6: Grade Calculator
  • Day 7: FizzBuzz
  • Day 8: 20 Small functions
  • Day 9: Multi-Function Calculator
  • Day 10: List Comprehensions exercises
  • Day 11: File Handling & Log Writer & Student Database System using CSV & Pandas
  • Day 12: Error Handling — try/except/finally + hardened Student Database
  • Day 13: Error Handling — Grade Manager with full error handling, repair_file() & logging
  • Day 14: Modules, Packages & pathlib — Grade Manager refactored into a package with pathlib
  • Day 15: Library Management System with OOP — classes, init, self, JSON persistence
  • Day 16: Library Management System extended — search_by_author(), list_available(), export_to_csv(), CSV re-import
  • Day 17: Library Management System with OOP — inheritance & polymorphism, EBook & AudioBook subclasses, display_clean_data()
  • Day 18: Library Management System with OOP — dunder methods (str, repr, lt), display_sorted() using object comparison
  • Day 19: Decorators — @timer, @retry(n) decorator factory, @log_calls with logging module
  • Day 20: Generators & Iterators — yield, lazy evaluation, generator pipelines
  • Day 21: collections, datetime & type hints — Counter, defaultdict, deque, strptime, full type hints, log analyzer
  • Day 22: NumPy — arrays, shapes, reshape, flatten, transpose, broadcasting, indexing, slicing
  • Day 23: Weather Analyzer CLI — NumPy operations (argmax, argmin, np.where, mean), zone classification, timer context manager + logging
  • Day 24: Pandas — indexing & filtering basics
  • Day 25: CLI Data Explorer — Pandas filtering conditions
  • Day 26: CSV File Data Cleaner
  • Day 27: Two Panel Figure using matplotlib
  • Day 28: 4 week revision
  • Day 29: Test Analyser using pytest
  • Day 30: Type hints — advanced + mypy
  • Day 31: Mini EDA Project — Titanic
  • Day 32: YAML & Bash Scripting — PyYAML, yaml.safe_load(), chmod, grep, pipes & bash automation
  • Day 33: Environment Setup & Logging — venv, python-dotenv, os.getenv() & replacing print() with logging
  • Day 34: Git Branching Workflow — Feature branches, merging, merge conflicts, git diff, git stash, git revert & git log --oneline --graph
  • Day 35: Week 5 Review & LeetCode — Solved Valid Anagram (LeetCode #242) and Top K Frequent Elements (LeetCode #347) + GitHub Portfolio Setup
  • Day 36: Mini Project.

Topics Covered

Core Python

  • Variables & Data Types
  • Strings & Methods
  • Lists, Tuples, Sets, Dictionaries
  • If/elif/else, For & While Loops
  • Functions, *args & **kwargs
  • List Comprehensions
  • Lambda (map, filter, reduce)
  • Closures

File & Data Handling

  • File Handling (Read, Write, Append)
  • CSV File Handling
  • pathlib
  • JSON config loading

Error Handling & Modules

  • Exception Handling — try/except/finally, ValueError, FileNotFoundError
  • Modules & Packages

OOP

  • Classes & Objects, init, instance attributes, self keyword
  • Inheritance, Polymorphism & Method Overriding
  • Dunder Methods — str, repr, lt

Advanced Python & Testing

  • Decorators, functools.wraps, Decorator Factory pattern
  • Generators & Iterators, yield keyword
  • Context Managers — enter/exit
  • Type Hints, mypy, pytest
  • logging module — replacing print() with structured logs
  • collections — Counter, defaultdict, deque
  • datetime — strptime, strftime, timedelta

DevOps, Tooling & Environment

  • YAML: PyYAML, yaml.safe_load(), yaml.dump()
  • Bash Scripting: chmod +x, mkdir -p, grep, pipes (|), shell scripts
  • Virtual Environments: python -m venv, environment activation
  • Environment Variables: python-dotenv, load_dotenv(), os.getenv()
  • Git & Version Control: Feature branches, merging (mainfeaturemergedelete), git log --oneline --graph, git diff, git stash, git revert

NumPy

  • ndarray, shape, dtype, reshape, flatten, transpose
  • Array math & broadcasting
  • Boolean indexing & filtering
  • np.random, np.where, np.argmax, np.argmin, np.mean

Pandas

  • read_csv, .head(), .info(), .describe(), .shape, .dtypes
  • Indexing — .loc[] & .iloc[]
  • Boolean filtering & multi-conditions (&, |)
  • .value_counts(), .unique(), .nunique()
  • .sort_values(), groupby, dropna, idxmax, idxmin
  • .groupby().agg(), .pivot_table(), .fillna(), .dropna(), .duplicated(), .drop_duplicates()

Matplotlib

  • show, title, grid, legend, plot, xlabel, ylabel, savefig(), subplots
  • bar, barh, reverse, style, xticks, tight_layout
  • hist, axvline, use, linewidth, color
  • scatter, s, c, edgecolor, marker, alpha, cmap, colorbar, set_label, xscale, yscale

Seaborn

  • set_theme, load_dataset, relplot, displot, multiple, hue, kde, data
  • heatmap, annot, cbar_kws

About

My daily Python learning projects — one script per day.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages