Python Programming

Login to KOS for course enrollment Display time-table
Code Completion Credits Range Language
BI-PYT.21 KZ 5 3C Czech
Garant předmětu:
Vojtěch Vančura
Mohamed Bettaz, Ondřej Bouchala, Jiří Hanuš, Jan Šafařík, Martin Šlapák, Vojtěch Vančura
Department of Software Engineering

The aim of the course is to get acquainted with basic efficient control and data structures of the Python programming language for text and binary data processing. The differences between philosophy of programming in Python and in other programming languages will be explained. Each topic is prepared for students in the format of a Jupyter notebook, which enables greater accent to individual student work. Before each lab, students pass a short test on the last week topic. Four homeworks plus a semester work will be assigned during the semester.


We expect to understand the git versioning system at the BI-GIT course level and knowledge of at least one another programming language (C, C++, Java) at the level of the BI-AG1 class.

Syllabus of lectures:

There are not any lectures.

Syllabus of tutorials:

1. Introduction to Python. Virtual enviroment. Python syntax and semantics.

2. Built-in types. Operators. Conditions, Loops.

3. Lists, Tuples, Sets, Dictionaries. Slicing. Comprehensions.

4. Functions, Annotations, Decorators.

5. Generators, Iterators, Classes

6. File system, Command line arguments.

7. Modules, Packages

8. Numpy: dimensions, shape, size, axis, rank. N-dimensional slicing. Broadcasting. Vectorization.

9. Graphics and Numpy. Convolution.

10. Pandas. Conditions, Group by, Order by, Merge and Joins. SQL vs. Pandas.

11. Streamlit and web mini-applications for data science.

12. Unit testing with pytest. Asserting. Fixtures.

13. Semestral project presentations.

Study Objective:
Study materials:

1. McKinney W. : Python for Data Analysis (2nd Edition). O'Reilly, 2017. ISBN 978-1491957660.

2. Lutz M. : Learning Python. O'Reilly, 2013. ISBN 978-1-449-35573-9.

3. Necaise R. D. : Data Structures and Algorithms Using Python. John Wiley & Sons, 2011. ISBN 978-047061829.

4. Horstmann C.S., Necaise R.D. : Python for Everyone (2nd Edition). John Wiley & Sons, 2016. ISBN 978-1-119-18665-6.

Further information:
Time-table for winter semester 2024/2025:
Time-table is not available yet
Time-table for summer semester 2024/2025:
Time-table is not available yet
The course is a part of the following study plans:
Data valid to 2024-06-16
Aktualizace výše uvedených informací naleznete na adrese https://bilakniha.cvut.cz/en/predmet6601206.html