Course detail

Programming in Python

FSI-TPY Acad. year: 2024/2025 Winter semester

This course covers the basics of the Python programming language, with a focus on its practical applications in engineering.

Learning outcomes of the course unit

Prerequisites

Basic computer literacy at a high school level is assumed.

Planned learning activities and teaching methods

Assesment methods and criteria linked to learning outcomes

Attendance at lectures is encouraged, and participation in exercises is mandatory. Classes follow a weekly schedule, and credit is awarded based on completing a script simulating a simple physics task.

Language of instruction

Czech

Aims

The goal is to develop proficiency in using Python for engineering practice.

Specification of controlled education, way of implementation and compensation for absences

The study programmes with the given course

Programme B-FIN-P: Physical Engineering and Nanotechnology, Bachelor's
branch ---: no specialisation, 2 credits, compulsory-optional

Programme C-AKR-P: , Lifelong learning
branch CZS: , 2 credits, elective

Type of course unit

 

Lecture

26 hours, optionally

Teacher / Lecturer

Syllabus

  1. Introduction to Python
  2. Version control with Git
  3. Lists, tuples, dictionaries
  4. Numpy for vectors and matrices, matrix operations, and index expressions
  5. Control structures
  6. Matplotlib for plotting points, curves, surfaces, and data plots
  7. Input and output of data, including working with text and regular expressions
  8. Functions, including built-in and user-defined functions, parameter types, and recursion
  9. Numerical derivation, integration, and ODR solutions
  10. Introduction to object-oriented programming
  11. Application of the object-oriented approach to solving n-body problems
  12. Optimization tasks
  13. Overview of Python packages

Computer-assisted exercise

13 hours, compulsory

Teacher / Lecturer

Syllabus

  1. Installing Python – Anaconda and ChatGPT
  2. Version control using GitHub
  3. Lists, tuples, dictionaries
  4. Numpy for vectors and matrices, matrix operations, and index expressions
  5. Control structures
  6. Matplotlib for plotting points, curves, surfaces, and data plots
  7. Input and output of data, including working with text and regular expressions
  8. Functions, including built-in and user-defined functions, parameter types, and recursion
  9. Numerical derivation, integration, and ODR solutions
  10. Application of the object-oriented approach to solving n-body problems
  11. Optimization tasks
  12. Semester project
  13. Submission of semester project