Skip to content

Eamon2009/python.fundamentals

Repository files navigation

Python Fundamentals

A structured collection of Python fundamentals, exercises, and learning notes designed to build a strong programming foundation.

This repository documents my journey of learning Python by implementing core programming concepts, experimenting with code, and organizing knowledge through Jupyter notebooks and Python scripts.

The goal is to create a well-structured reference for Python basics that can also help beginners understand how fundamental programming concepts work in practice.


Repository Structure

Folder What it Covers
loops/ for loops, while loops, iteration patterns, and step-by-step examples
Functions/ Defining functions, parameters, return values, and function-based exercises
Lambda_functions/ Lambda expressions, anonymous functions, and use with map, filter, sorted
list/ List creation, indexing, slicing, and common list operations
Tuples/ Tuple basics, immutability, and practical use cases
Dictionary/ Dictionary creation, access, iteration, and manipulation
OOP/ Classes, objects, inheritance, encapsulation, and OOP design patterns
Advance Python/Decorators/ Function decorators, @wraps, and real-world decorator patterns
string_fundamentals/ String methods, formatting, slicing, and common operations
Notebooks/ Jupyter notebooks with interactive examples and concept explanations
Practical_application/ Small projects applying core Python concepts end-to-end
go-python-integration/ Calling Python from Go — cross-language integration examples

Root-level scripts

File Description
calculatorV1.py Basic calculator — first iteration
calculatorV2.py Advanced calculator with operator precedence and parentheses support
math_menu.py Interactive math menu using functions
cursor_game.py Simple cursor-based game
Automated_Email_Sender.py Script to send automated emails via Python

What This Repository Focuses On

This project focuses on building strong programming fundamentals, including:

  • Python syntax and structure
  • Writing clean and readable functions
  • Understanding loops and control flow
  • Working with common data structures (lists, tuples, dictionaries)
  • Object-oriented programming principles
  • Logical problem solving and practical applications

The repository is structured to move from basic concepts toward practical coding exercises and real-world patterns.


Technologies Used

  • Python 3 — core language
  • Jupyter Notebook — interactive learning and concept exploration
  • Go — used in the cross-language integration examples

Why This Repository Exists

Many beginners jump directly into advanced topics like machine learning or frameworks without building strong fundamentals.

This repository focuses on:

  • Strengthening core programming skills
  • Practicing logical thinking
  • Creating a structured learning path for Python

A strong foundation makes it easier to learn data science, machine learning, and systems programming later.


How to Use This Repository

  1. Start with loops/, Functions/, and list/ if you're new to Python
  2. Move into Dictionary/, Tuples/, and OOP/ once you're comfortable with the basics
  3. Explore Advance Python/Decorators/ for more advanced patterns
  4. Check the Notebooks/ folder for interactive walkthroughs
  5. Look at Practical_application/ and the root scripts to see concepts applied in real code

Future Improvements

  • Add unit tests for all scripts
  • Standardize folder naming conventions
  • Expand Jupyter notebooks with more worked examples
  • Add a dedicated exercises/ folder with challenge problems and solutions

Contributors

A huge thank you to everyone who has contributed to this repository — your time, effort, and knowledge make this project better for every learner! 🙌

Username Profile
Eamon2009 @Eamon2009
codeaddict-119 @codeaddict-119
breaker865-netizen @breaker865-netizen

All contributions are welcome! 🐍


License

MIT

About

This repository is about python basics and A curated repository of core Python 3 development patterns, focusing on clean code, Object-Oriented Programming (OOP) principles, and efficient data handling. This project serves as a comprehensive technical reference for foundational syntax and advanced Pythonic idioms.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Contributors