EC
Python
Description
The Python course aims to equip students with the skills necessary to develop applications related to radiation physics and scientific imaging. This course is a prerequisite for the 'Artificial Intelligence' course.
The fundamental concepts of Python programming will be covered, along with scientific libraries enabling data processing, simulation, and the generation of scientific results. Students will learn to structure their programs to undertake more substantial projects in the future. They will also learn to effectively use Python library documentation to continue developing their skills beyond this course
Compétences requises
-
Work in Linux and know the basic commands (an introductory course is provided at the beginning of the year)
-
Have already programmed in a language
Compétences visées
-
Write basic but structured, documented, and configurable Python programs
-
Leverage documentation to use Python library features
-
Develop classes in Python
-
Set up a data analysis or simulation pipeline, from data management to the production of graphical results, including statistical processing
-
Utilize the main features of libraries like NumPy, SciPy, and Matplotlib to quickly create scientific programs in Python.
-
Implement basic image processing techniques
Modalités d'organisation et de suivi
This course is organized into 3-hour sessions, which include lecture time, independent use of Jupyter notebooks to progress at one’s own pace through examples and short exercises. Longer exercises allow students to tackle practical cases of scientific data processing or simulations. The instructor will guide and advise students in the development of these programs. Course materials are available on Moodle.
Syllabus
The course is structured around the following elements:
-
The basics of Pyhton programming
-
NumPy: Multi-dimensional data processing
-
Matplotlib: Creating scientific graphs
-
SciPy: Algorithmic processing
-
Pandas: A tool for tabular data
-
Advanced Python: Creating modules and classes
-
Image processing in Python