Introduction to Python

Part 1: Introduction: HPC & Programming

This comprehensive beginner-level course is designed to provide students with a solid foundation in Python programming.
It begins with fundamental concepts before introducing the object-oriented features of Python.
The course also covers widely used packages, including NumPy and SciPy for numerical computations and Matplotlib for data visualization, along with others relevant to scientific programming.
Advanced topics such as parallelization are introduced through MPI4Py and Numba, tools that enhance the performance and scalability of Python programs.
By the end of the course, students will have gained proficiency in Python programming, from basic syntax to object-oriented design and advanced computational techniques.