Lista zagadnień na zaliczenie

by Paweł Pięta published 2025/05/20 22:32:00 GMT+1, last modified 2025-05-20T22:32:57+01:00

Lista zagadnień na zaliczenie wykładu obowiązujących dla poszczególnych poziomów trudności.


I. Poziom podstawowy

  • Porównanie kompilowanych i interpretowanych języków programowania.
  • Podstawowe informacje o języku Python.
  • Literały, zmienne i typy danych.
  • Operatory.
  • Operacje wejścia/wyjścia.
  • Instrukcja warunkowa.
  • Wyrażenie warunkowe (ang. conditional expression).
  • Instrukcje iteracyjne.
  • Podstawy definiowania i wywoływania funkcji.
  • Podstawowe informacje i operacje wykonywane na:
    • sekwencyjnych typach danych,
    • słownikach,
    • zbiorach,
    • łańcuchach znaków.
  • Surowe łańcuchy znaków (ang. raw strings).

II. Poziom średnio-zaawansowany

  • Definiowanie i użytkowanie sparametryzowanych funkcji.
  • Zwracanie wartości z funkcji.
  • Indeksowanie sekwencyjnych typów danych.
  • Mechanizm wycinania fragmentów (ang. slicing).
  • Zaawansowane informacje i przetwarzanie danych zapisanych w:
    • sekwencyjnych typach danych,
    • słownikach,
    • zbiorach.
  • Mechanizm składania jednowymiarowych list/słowników (ang. list/dict comprehension).
  • Koncepcja i użytkowanie modułów.
  • Koncepcja błędów składniowych i wyjątków.
  • Hierarchia wbudowanych wyjątków.
  • Formatowanie łańcuchów znaków.
  • Koncepcja i użytkowanie obiektów plikowych.
  • Przetwarzanie tekstowych obiektów plikowych.
  • Cechy paradygmatu programowania obiektowego w kontekście języka Python.
  • Składnia definiowania klas. Konstruktory. Dziedziczenie.
  • Obiekty iterowalne (ang. iterable objects).
  • Wyrażenia generatorów (ang. generator expressions).

III. Poziom zaawansowany

  • Mechanizm składania wielowymiarowych list/słowników.
  • Zasięgi i przestrzenie nazw (ang. scopes and namespaces).
  • Zaawansowane informacje o modułach, m.in.:
    • bytecode,
    • uruchamianie modułu jako skrypt i argumenty wejściowe.
  • Koncepcja i użytkowanie pakietów.
  • Obsługa wyjątków.
  • Mechanizmy jawnego i niejawnego łączenia wyjątków (ang. exception chaining).
  • Argumenty i notatki wyjątków.
  • Asercje (ang. assertions).
  • Zaawansowane informacje i przetwarzanie łańcuchów znaków.
  • Przetwarzanie binarnych obiektów plikowych.
  • Obsługa wyjątków w kontekście przetwarzania obiektów plikowych.
  • Charakterystyka obiektów klas, instancji i metod.
  • Zaawansowane koncepcje paradygmatu programowania obiektowego w kontekście języka Python.
  • Iteratory, funkcje generatorów i generatory (ang. iterators, generator functions and generators).
  • Wyrażenia lambda (ang. lambda expressions).
  • Domknięcia (ang. closures).
  • Cechy paradygmatu programowania funkcyjnego w kontekście języka Python.
  • Zaawansowane typy danych (np. bytes, bytearray) i wbudowane funkcje (np. map(), filter()).