Course detail
Programming in Python
FSI-VP0-A Acad. year: 2026/2027 Summer semester
This course introduces students to the basics of modern programming in Python and to the procedures for creating high-quality, clear, and maintainable code. Students will learn how to work with the development environment, versioning, and basic tools for code analysis. The course covers key elements of the language, such as data structures, functions, exceptions, generators, iterators, and the principles of object-oriented programming. It also includes the basics of graphical user interfaces, testing, program debugging, parallel processing, and application performance optimization. The course concludes with the practical use of Python for communication via REST API and gRPC and a summary of the knowledge acquired. The aim is to prepare students to independently create robust and efficient applications in Python.
Language of instruction
English
Number of ECTS credits
4
Supervisor
Department
Entry knowledge
Fundamental level of programming in course 1IN (Informatics).
Rules for evaluation and completion of the course
The active participation and mastering the assigned task.
Education runs according to week schedules. Attendance at the seminars is required. The form of compensation of missed seminars is fully in the competence of a tutor.
Aims
To examine the topic of scripting language Python and designo of their applications. To understand GUI programming using Python.
Having successfully completed the course, students will be able to use knowledge and understanding of the nature of scripting and the role of scripting languages, the syntax and semantics of Python.
The study programmes with the given course
Programme B-STR-P: Engineering, Bachelor's
specialization AIŘ: Applied Computer Science and Control, compulsory
Type of course unit
Lecture
26 hours, optionally
Syllabus
1. Development environments for programming in Python, PyCharm, VSCode
2 – 3. Basics of Python, language versions, environments, principles of writing code in Python. Code structuring. Comments. Static code analysis.
4. List and Dictionary, Slicing, Key parameter, functions, arguments, and exceptions
5. Generators, map, filter, yield
6. GUI
7. OOP, class, and interface
9. Testing and debugging programs in Python
10. Parallelism and processes
11. Application robustness and performance
12. Python and REST API, grpc
13. Summary, review
Computer-assisted exercise
26 hours, compulsory
Syllabus
1. Introduction, brief history of programming language development, introduction to Python and the PyCharm and VS Code development environments.
2. Basic commands, data types and operators, functions, modules, and classes.
3. Code structuring, comments, documentation, static analysis, and exception handling.
4. List, Dictionary, Slicing, etc.
5. Data structures, efficient search implementation.
6. Programming applications with a graphical user interface.
7. and 8. OOP.
9. Application integration in a broader ecosystem, containerization
10. XML or JSON document processing, libraries for storage and search.
11. Stream handling
12. Modern development concepts, REST API, grpc
13. Summary.