Course Information
Duration: 21 hours (1.5h lecture + 1.5h lab per week)
Level: Preparatory Class / 2rd Year
Institution: NHSM
Credits: 2 (Coef: 2)
This course introduces students to Python as a modern and efficient tool for mathematical programming and numerical computation. Through hands-on practice using Jupyter Notebooks, students will learn the fundamentals of Python, manipulate data using libraries like NumPy and Pandas, and visualize results using Matplotlib. The course also covers core numerical methods such as equation solving, numerical differentiation and integration, and basic algorithm analysis.
By the end of the course, students will be able to:
-
Use Python to perform structured mathematical computations.
-
Analyze and process data using arrays and tables.
-
Create and customize plots for mathematical results.
-
Implement and apply numerical methods to solve real-world problems.
-
Evaluate algorithm efficiency and improve code performance.
Evaluation:
-
50% Continuous assessment (labs, assignments, quizzes)
-
50% Final exam
This course is suitable for students with basic mathematical knowledge and a desire to learn computational tools to support problem-solving in applied mathematics and engineering contexts.
Python is a high-level, interpreted programming language known for its simplicity, readability, and versatility. It is widely used in scientific computing, data analysis, artificial intelligence, and, most importantly, mathematical problem solving.
Originally developed by Guido van Rossum in the late 1980s, Python has grown into one of the most popular programming languages due to its concise syntax, extensive library support, and strong community backing.
In the field of mathematics, Python provides a rich ecosystem of tools that allow for symbolic computation, numerical analysis, and visualization. Libraries such as NumPy, SymPy, Matplotlib, and SciPy make it an essential tool for students, researchers, and professionals working with mathematical models and computational simulations.
Why Python for Mathematics?
✅ Readability & Simplicity – Python's syntax is close to natural language, making it easy to write and understand.
✅ Powerful Libraries – It offers specialized libraries for algebra, calculus, optimization, and more.
✅ Interactivity – Python works well with Jupyter Notebook, allowing for step-by-step exploration of problems.
✅ Scalability – From simple arithmetic to complex simulations, Python scales with the complexity of mathematical
problems.
Throughout this course, we will explore how Python can be used to solve real-world mathematical problems, automate computations, and visualize results efficiently. Whether you are new to programming or have prior experience, Python will serve as a powerful ally in mathematical computing.

- Enseignant: Hamed Bouraoui