Learning how to code using Python and mastering GitHub workflows
This repository is a hands-on playground for practicing Python basics while getting familiar with GitHub. It includes simple exercises, scripts, and text files to build confidence in coding and version control.
Contents
Each file in the repository serves as a standalone exercise or utility:
capitalize.py — Practice string manipulation: capitalize inputs.
classes.py — Explore object-oriented programming with Python classes.
count.py — Counter example or basic number operations.
factorial.py — Compute factorials—great for loops or recursion practice.
file_handling.py — Learn reading from / writing to files.
guessing_game.py — Simple user-interactive guessing game.
loop_through_names.py — Iterate over collections, lists of names.
password_access.py — Password-checking logic—conditionals practice.
reversal.py — Reverse strings or other structures.
string_split_and_join.py — Work with splitting and joining string methods.
to_do_list.py — Basic to-do list functionality, perhaps with file persistence.
data.txt, todo.txt — Sample text data for exercises.
How to Use
Clone the repository:
git clone https://github.com/debugcharlie/python_practice.git
Navigate inside:
cd python_practice
Run any script to try out functionality:
python capitalize.py
Interact, explore, modify:
Add print statements, tweak logic, or write new functions.
Practice GitHub by committing your changes and maybe opening a PR.
Suggested Workflow
Create a new branch (e.g., branch/feature-xyz) to experiment.
Run and test one script at a time.
Make improvements:
Add documentation (docstrings or comments).
Enhance functionality or user interaction.
Commit regularly with clear messages.
Push and open a Pull Request to share your work or ask for feedback.
Who’s This For?
Beginners learning Python fundamentals: great for experimenting with data structures, control flow, I/O, and OOP.
Git novices: practice version control workflows in a low-pressure setting.
Anyone wanting incremental practice by editing and running small, isolated Python scripts.
Goals
Build confidence through doing.
Start thinking about code structure, testing, and readability.
Embrace iterative improvement—learning by committing and refining.
If you'd like to grow this repository further, here are some ideas:
Add new practice scripts—e.g., modules, decorators, error handling.
Include README examples for each script.
Provide test cases using unittest or pytest.
Add a license or include instructions for GitHub Pages, CI, or deployment.
Licensing & Acknowledgments
No license is specified in the repo—consider adding an open-source license like MIT or Apache 2.0 to clarify usage rights.
Thanks for building your Python & GitHub skills here!