A structured, hands-on Python course for students and curious minds — blending general programming with real physics examples.
- Complete beginners with no prior programming experience
- Physics / science students wanting to use Python as a tool
- Self-learners who want practical, runnable examples
No math beyond high school is required to start. Physics examples are explained briefly before use.
Each week has three files:
| File | Purpose |
|---|---|
notes.md |
Concept explanations with syntax |
examples.py |
Runnable code — general + physics themed |
exercises.py |
Practice problems with hints |
| Week | Topic |
|---|---|
| 01 | Variables, data types, and basic operations |
| 02 | Strings and slicing |
| 03 | Lists and list methods |
| 04 | Tuples, dictionaries |
| 05 | Conditions and decision making |
| 06 | Loops and iteration |
| 07 | Functions and reusable code |
| 08 | Introduction to NumPy |
| 09 | Matrices and basic linear algebra (NumPy) |
| 10 | Introduction to SymPy |
| 11 | Differentiation and integration (SymPy) |
| 12 | Matplotlib and data visualization |
| 13 | Physics simulations |
| 14–15 | Mini project work |
Requirements: Python 3.8+
pip install numpy sympy matplotlibThat's it. Each weekly folder is self-contained — just open and run.
- Clone or download this repo
- Start at
week01/ - Read
notes.mdfirst - Run and study
examples.py - Try
exercises.pyon your own
git clone https://github.com/YOUR_USERNAME/scientific-python-for-beginners.git
cd scientific-python-for-beginners/week01_variables
python examples.pyExamples and exercises draw from:
- Kinematics & free fall
- Unit conversions (temperature, energy)
- Oscillations & waves
- Vectors and forces
- Symbolic differentiation & integration
- Projectile motion simulation
Physics context is always briefly explained — you don't need prior knowledge.
scientific-python-for-beginners/
├── README.md
├── course_schedule.md
├── week01_variables/
│ ├── notes.md
│ ├── examples.py
│ └── exercises.py
├── week02_strings/
│ ├── notes.md
│ ├── examples.py
│ └── exercises.py
├── week03_lists/
│ ├── notes.md
│ ├── examples.py
│ └── exercises.py
└── ...
Try the exercises on your own before consulting the solutions.
Suggestions, corrections, and additional examples are welcome through issues and pull requests.
MIT — free to use, share, and modify.
This course material was developed by Dr. Sara Medhet for educational purposes.
You are welcome to use, share, and adapt the material in accordance with the repository license. If you use substantial portions of this course in teaching, training, publications, or derivative educational resources, please provide appropriate attribution to the original repository and author.
Dr. Sara Medhet (PhD in Physics)
This repository was developed to support accessible and application-oriented learning in scientific programming and computational methods.